Releases: ReCodEx/api
v1.8.0
Changelog
- Exercise marked as broken on creation and if appropriate on forking
- Create a submission failure when the submission will not even compile
- Add revocation mechanism to authentication tokens
- Add invalidation endpoint for all issued tokens of user
- Changing password will invalidate all previously issued tokens
- Implement issuing of restricted read-only tokens for usage in applications or scripts
- Reflect change of default evaluation folder on worker
- Runtime environment
language
item renamed tolong_name
- Bugfix in Node.js and PHP concerning extra execution files
- Groups with assignments cannot be marked as organizational
- Deadline of created assignments is further in the future and not now
- Implement endpoint for deletion of comments
- Various bugfixes and optimizations
- Added new bugs ;)
Commits
f13380e Export current init fixtures
5b57df0 Implement comment deletion
4d6d55a Fixing condition that tests token validity against expiration threshold.
6e1aae6 Change default example expiration period of token
81b0bd5 Merge pull request #188 from ReCodEx/default-deadline
458710a When creating an assignment, put the deadline further into the future
3d9d0be Merge pull request #186 from ReCodEx/assignments-in-org-groups
db15894 Disallow marking groups with assignments as organizational
27a0b86 Bugfix: in pipelines merger there could be conflicting port names, this fix properly solve the case
a5552c1 Extra files needs to be inputted into PHP and Node run boxes, otherwise they might not be copied before execution into test folder
df8efa6 Tune exceptions within exercise config checker
ff50673 Rename RuntimeEnvironment::language to longName
725e5ab Custom judge should have absolute path for binary
3816b4f Reflect change of default evaluation folder of worker in boxes compilation
5f5d6d3 Remove prefix from Variable structure and introduce testName as replacement
6c870c5 Do not use chdir in boxes compiler
8c405c9 Merge pull request #177 from ReCodEx/token-refresh
447f6ec Return a new access token if a user changes their password
3063a88 Merge pull request #180 from ReCodEx/broken-exercises-adjustments
78192ac Re-implement sending exercise compilation error notifications using an updated finishSubmission
c1574dd Merge pull request #182 from ReCodEx/sis-exception-text
4d8a790 Better exception text when a user attempts to use Sis endpoints without a CAS UK account
bcd8856 Add read-all scope
763cdb6 Remove unnecessary throws tag
6903325 Send a new access token on token invalidation
0ab53fb Rename issue-token endpoint to issue-restricted-token
f91daee Forbid issuing password change and verification tokens
d260793 Remove unnecessarilly redundant database columns
bca8fa7 Move predefined token scopes to a separate enum class
dacfc58 Add an endpoint for issuing restricted access tokens
9ed7980 Add token invalidation endpoint
699fd12 Revoke tokens on password change
d4a4694 Revisit token refresh endpoint
34e2e46 Add token validity threshold field to user entity
af11bd3 Create a submission failure when the submission won't even compile
5ebaaca Check for missing configs in the compiler
6b1d81d Return an error instead of crashing when reference solution submission fails
fd2083b Specify that exercise config is nullable in getter type hints
3fdb746 Check for null values when checking exercise configuration
f8c029a Better type hint in Generator::generateJobConfig
a4dd0c9 Set isBroken flag when appropriate during exercise creation, update and fork
f0a5cee Exception message for authorized but unregistered users clarified.
3dd6231 Export current database
v1.7.0
Changelog
- Security endpoint which can be used to check permissions of endpoints
- Allow disabling runtime environments for assignments
- Presubmit endpoint which can be used for determining runtime environments for given files furthermore it can be used for hints about submit variables or some other stuff
- Refactoring and change of endpoints concerning reference exercise solutions and their submitting to appear more like assignments one
- Description of chosen configuration options in
config.neon
- Introduced concept of submit variables, these variables can be given by user during submit and should contain values which author of exercise defined as needed from user (submit variables are used for example for entry points in languages like Python)
- Entry points in form of submit variables added to Python, PHP and Node.js
- Make judge output from solution evaluation accessible to supervisors
- Introduce attach and detach group endpoints for manipulation with bindings of exercise and group
- Change permissions on forking of exercise, supervisor now should be able to fork exercises
- Various bugfixes and optimizations
- Added new bugs
Commits
a052341 Do not prefix entry points with eval directory, we are chdired in there
d0a2092 Repair @krulis-martin nitpicking trailing dot
9f70157 In assignment there can be environments in exercise config which are disable in it, reflect this in exercise config helper and presubmit
868b0e1 Use magic to cast submit variables in exercise config checker
ba28e3e Add check for brokiness in reference exercise solutions submits and resubmits
1a0f49f Migrate entry-points from environment to exercise config
0e147db Reflect change of the behaviour of submit variables in presubmit
6424424 Change behaviour of submit variables for exercise-config
5fee449 Repair silly space mistake
b345b97 Export current database
7505a18 Change detach permissions, only superadmin can detach last exercise group
fed4aa0 Better check of permissions on attaching and detaching groups to exercise
ccbc6c6 Change routes of attach and detach group from exercise endpoints
3f1c904 Implement endpoints for attaching and detaching exercises to groups
3f2388a Merge branch 'master' into entry-points
a21e7df Add array_values to all possible endpoints which might have problems with indexing
282c7dd Return judgeOutput to users who are authorized to view it
16b1684 Refactor assignment solution submission entity view
53df10f Merge pull request #173 from ReCodEx/disable-envs-fixes
6bfa856 Replace manual array validation with annotation
ba8f2a5 Add pipeline parameter regarding entry points. Sort entities during exporting from database.
1b66353 Add missing null check
15b3047 Fix tests and unify parameter names
bbc8c80 Bugfix: proper handling of judgeOutput in evaluation of results
5d371b1 Bugfix: fix wrong looking for submit references in exercise config
f996887 Implement migration of PHP, Node and Python tu entry points and multiple source files
512d392 Fix missing getValues
a93bf2a Return all runtime environments in Assignment JSON
5c71d25 disabledRuntimeEnvironments -> disabledRuntimeEnvironmentIds
e8eff75 Change permission on forking of exercise. Supervisor are now able to fork exercises.
cb949d5 Prepare PHP, Node, Python boxes for entry points
01658bf Introduce solutionParams parameter in submit actions
bac7721 Introduce SolutionParams structure
5c00198 Move hardware group entity metadata to more logical namespace, since it has no connection to ExerciseConfig
f94f790 Add submit variables into preSubmit endpoints
d840383 Change behaviour of submit variables, which can be only in environments config
3d3d8a5 Merge pull request #171 from ReCodEx/comment-acl-bugfix
9186585 Grammar fix.
b09ed07 Fix ACL usage in Comments:default
c6f4cb5 BaseCompiler tests which integrates submit variables
8bdd50d Get variables resolver ready for submit references
f9ece21 Add configuration section to readme and add comments to global config file
3ca388b Split presubmit endpoint to check and action methods
a862ef5 Add submission into solution on submission creation
bec1a0e Make reference submit really a submit
8dd0485 Presubmit for reference exercise solutions
6e4a959 Refactoring of reference-exercise-solution endpoints
99bc75d Fixing POST route.
1edd55b Make presubmit POST request
8bfac6f Also array values should be all matched in presubmit
9afa37b SubmitOracle -> PreSubmit
4d22cab Repair environmentsForFiles function and fill-in tests
78059fc Submit oracle endpoint intro. Done implementation of environmentsForFiles helper.
77f9cfc WIP: environment based on provided files oracle introduction
5d7f460 Merge pull request #167 from ReCodEx/assignment-environments-restriction
8c9dc4b Add isRequestJson method to BasePresenter
6f917be Allow disabling runtime environments in assignments
1d44f61 Extract ACL checks and add security check endpoint. (#169)
71ff656 Bugfix: call checker after uploading new supplementary files
e47e6b9 Add composer autoload optimisation. Create issue template
59e3d2e Updating configuration of PHP execution box.
v1.6.2
Changelog
- forbid changing names of externally registered users
- delete student and reference solutions
- update API doc
- bug fixes
Commits
07192b5 Adding logging to specific SIS data processing failures. Adding separate (more accurate) exception message for case, when email is missing in CAS attributes.
4165625 Accepting empty annotations in SIS response.
58cb9bc Forbid changing name of the externally registered users
2f0a782 Add cascading remove in SolutionEvaluation entities
d9d26cc Fix migration which deletes old reference solution
e6ff3fe Delete endpoint for assignment solutions
3b5f94e Hard deleteable ReferenceExerciseSolution
0910826 Add cascades on reference and assignment solutions. Migration: delete old soft-deleted reference solutions
148bd0d Update swagger generator
v1.6.1
Changelog
- Validate almost all exercise config structures on setter endpoints
- SIS bugfixes when there was multiple SIS codes assigned to single group
- Various bugfixes
Commits
867da7b Validate exercise limits against HwGroupMeta limits
4a8ffd5 Restructure exercise config checker
9ab57b4 Add missing exercise config checker calls into setter endpoints
fc18cfe Modifying the SIS subscribed groups response, so that each group contains a list of all bound SIS codes (not just the one the user has).
8983670 Return all sis ids for groups with multiple bindings
d00b2e9 Fix erroneous generator usage
v1.6.0
Changelog
- Use
csc
compilation insted ofmsc
in C# compilation box - New initial setup of database using fixtures
- Set hardware groups to exercise endpoint and appropriate restructure
- Remove deprecated simple limits endpoints
- Add name and metadata to HardwareGroup entity
- Change format of data returned by studentsStats endpoints
- Return proper count of valid submitted solutions in assignment solutions
- README tweaks
Commits
21a0c7d Export current hardware groups state into fixtures
27999cb GitHub release badge added
cdc279d Return count of already submitted solutions in canSubmit endpoint
b89efed Change format of data returned by studentsStats endpoints
2610976 Tweak readme a bit
e73046f Merge pull request #162 from ReCodEx/hwgroup-metadata
68817ce Merge branch 'master' into hwgroup-metadata
a617f0c Merge pull request #161 from ReCodEx/exercise-hardware-groups
3f81350 Move doc from wiki to README
58d5b0f Add hardware group metadata structure
60efbce Remove deprecated simple limits endpoints
e36e4f9 Merge branch 'master' into exercise-hardware-groups
8887aa4 Export current database
d085877 Refactor initial setup of database. Export also hardware groups in db:export command
b4136da Update updater. Add name to HardwareGroup entity. Delete HardwareGroupAvailabilityLog entity.
d78e759 Setup new entry points for setting hardware groups to exercise
fbdddc3 Refactor initial setup of database. Export also hardware groups in db:export command
de73a12 Change mono compilation which used to use mcs to use csc
49331c4 Merge branch 'master' of https://github.com/ReCodEx/api
48f8a45 Changing initial flags of new Group.
9bb7a2c Bugfix: generate random file name in ExerciseChecker
v1.5.0
Changelog
- Allow using and/or operators in permission config
- Results from backend have separate stdout and stderr outputs, reflect this change
- Broken exercise flag and broken message and appropriate changes in assigning and syncing
- Add checker for exercise config which can set up broken exercise flag
- If status from sandbox is TO (timeout) mark test execution as invalid
- Add PHP and Node.js support
- Check for collisions between files submitted by user and files which belongs to exercise
- Add isOrganizational and isArchived flags to group and appropriate changes in group infrastructure
- Make available downloading of various files in zip archives
- Added endpoints for manipulating with SIS terms
- Introduce new request parameter validation type timestamp
- Create various exercise config structures only when needed during update
- Send an e-mail to the author when a submission failure is resolved
- Never-ending story of bugfixes...
Commits
8aa805d Add exercise and assignment identification in SubmissionFailure entity
fc4c540 Fixing tiny glitch in SIS presenter.
dd69151 Display original filenames in downloaded zip
03b77fa Bugfix: clear cached file system information in ZipFilesResponse
27d527a Fix: refactor routes for downloading solution archives
d3005e8 FALSE -> false
4b65ff8 TRUE -> true
c89bad5 NULL -> null
b66bd54 Add sendEmail flag into resolve submission failure endpoint
4f6bf8e Send an e-mail to the author when a submission failure is resolved
0591b48 Send identifications of solutions in SubmissionFailure entity
b11e4bd Create new exercise limit entities only when needed
ac30b45 Create new environment exercise config entities only when needed
4bc1e60 Create new exercise config entities only when needed
76fe6d4 Add test name as parameter of boxes compilation and use it in execution box
67d79b1 Fix: repair zip archives permissions on exercise files
9a81bee Merge pull request #153 from ReCodEx/sis-terms-crud
3ef3195 Merge pull request #152 from ReCodEx/zip-downloads
855c12c Use timestamp validation type where applicable
36ca09c introduce timestamp parameter validation
c2404a5 Return term information after registering it
d0e45ef Check for null values
fb058a7 add endpoints for manipulation of SIS terms
3197c65 Download exercise supplementary files endpoint
c93bef0 Bugfix: students should not be seen as supervisors
2694e83 Exercise attachment files archive download endpoint
bac3690 Tests for download solution archives endpoints
9c517b1 Access solution files in form of zip archive for download
d3ab9aa Zip files response
0f8b39f Refactoring concerning files and storages. Delete file after sending response added
88fd28d Add exerciseId in Assignment view
51d9629 Merge pull request #150 from ReCodEx/fix-reference-submission-failures
e30b6be Merge pull request #151 from ReCodEx/fix-broken-flag-on-set-limits
a2ff838 Perform exercise check after updating the limits.
dfd4cd7 Merge pull request #149 from ReCodEx/fix-group-name-validation
a564675 Save reference solution submission failures
bbd1280 Fix searching for groups by name.
5a31690 Merge pull request #148 from ReCodEx/group-flags
e5946ec disallow creating subgroups in archived groups
a5df35d Prevent endpoints that return groups from returning archived groups
24a875b Forbid adding students to archived/organizational groups
01fdcd6 add isArchived/isOrganizational flags to Group responses
0cc9157 add endpoint for group archivation
ef86c2b Add setOrganizational endpoint
e3d0c00 Add isOrganizational and isArchived flags to Group entity
eb24d2e Bugfix: cpu-time exceeded was incorrectly always true
24b2d73 Add FileIn boxes tests
d32a6c3 Add FetchFile boxes tests
f3aea12 Check for collistion between remote files and submitted user files.
23bcf5b Adjustments of configuration.
29aaf9e fix tests
994eb61 Merge pull request #140 from ReCodEx/broken-exercise-flag
fecff79 Has threshold flag in updateGroup endpoint
793e829 Bugfix: merge proper nodes in pipelines merger
4a35d03 Bugfix: check if child found in variables resolver
b11c316 Export new PHP and Node.js pipelines
258272d Add run boxes for PHP and Node.js
65e9b11 If the status is TO in sandbox results, return appropriate negative statistics
02c8a38 Make sure that exercises have explicit limits
98ff643 Make sure that exercises have runtime environments and localized texts
fa4c3fe Validate score configuration
43842cb move ExerciseConfigChecker to App\Helpers\ExerciseConfig and document it
bfc5ebb move getRuntimeEnvironments to ExerciseData
5c76a82 validate exercise configs when exercise files and configs are changed
cdb7f26 add a service for checking exercise configs
39d7329 pull getRuntimeEnvironments method to IExercise
8516ca3 Do not allow syncing assignments with broken exercises
e0593f6 Do not allow assigning broken exercises
416bfda add a column that indicates an exercise is broken
09688c9 Merge pull request #144 from ReCodEx/enhanced-permission-conditions
9bb87a7 Add newline after stdout while joining stdout and stderr
dc564dd Output from worker is currently divided into stdout and stderr
6d0d280 use or conditions in permission config
e6c2817 allow using and/or in ACL rule conditions
f793573 Merge pull request #142 from ReCodEx/group-exercise-permissions
2e80b74 Empty local password flag in user view
v1.4.4
Changelog
- Deleted endpoints for collecting public user and group information, private/public info consolidated into one multifunctional enpoints which engages user permissions
- Bugfix: Comments can be now longer than 255 characters
- Users registered externally are now able to create local account with appropriate endpoint
- All compilation pipelines supports extra source files given by exercise author
- Python compilation to pyc format
- Added cpu-time alongside wall-time in exercise limits and submission evaluation
- CMD commands to cleanup of exercise configurations and pipeline configurations
Commits
31bc8f8 Fixing tests.
5a9512b Bugfix: python compilation outputs pyc file
47b0f77 Move parent group ID and IDs from private part to public part in GroupView.
da05822 Add new method to BaseDeleteRepository which is supposed to get all even deleted entities.
729ebc2 Pipeline configs cleanup command
db8e2ce Exercise configs cleanup command
0145dea Refactor commands for current cleanups
3666dfb Bugfix: correct extra files python migration
8fc9ebf Store cpu time in evaluation test and task results
3d46db3 Add cpu time in Stats evaluation helper structures
a4e12da Rename time to wall-time in results evaluation
1b25507 Add cpu-time to exercise configuration
70af4cb Refactor fetch pipeline boxes
e4a2443 Export compilation extra files and python compilation into fixtures
4aba204 Python compilation
1103f9a Migrate db to reflect compilation extra files
de59163 Add extra source files to chosen compilation boxes
0553ccf Refactor static strings in compilation boxes
ed481df Add ID to submission failures
e3a43d9 Bugfix: environment has to be added even into tests during environment config update
ce9483e Bugfix: empty passwords are not hashed
f9fa0e5 Add proper user view into createLocalAccount action
c6a167b Merge branch 'private-public-info'
c488121 Create local account endpoint
67d466c Change column type of comment->text from varchar(255) to text
66dd61f Public/private group data view factory
903abcc Merge branch 'master' of https://github.com/ReCodEx/api
9a3462c Fixing bug in shuffle judge parameters in JudgeBox.
v1.4.3
Changelog
- Pascal will now accept multiple files
- Proper displaying of version on default page
- Communication with CAS service using XML rather than JSON
Commits
b873a24 Each pascal source file has to be compiled separately
cce63c0 Allow pascal compilation to accept multiple source files
f16a6a7 Displayed version of api is based on git tags
9a9a8f8 CAS 2nd phase verification uses XML instead of JSON (#136)
v1.4.2
Changelog
- Added comment statistics to assignment solution view
- Added new file/folder existance check after compilation of user solutions (Useful for instance for FPC which sometimes does not output proper binary file even if told to)
- Various bugfixes and code optimisations
Commits
15cc7cd make sure that submissions without result url are not evaluated
3b3c01a Make sure getCurrentUser() doesn't return null
3066d95 Fixing doc comment.
7cdffb4 Fixing idiotic bugs from previous PRs.
1150fd5 Fixing minor issues reported in PR. (#134)
64bfec8 Merge branch 'master' of https://github.com/ReCodEx/api into solution-view-factory
5f204d7 Adding comments statistics to solution view factory.
dee84a1 check for sqlite3 in tests
93442eb Solution view refactored into separate view factory. Some ACL relics from solution/submission redesign fixed along the way.
06fc29a WiP Refactoring - moving AssignmentSolution getData into separate view factory.
9b6644f Better exception handling in evaluation loading
87652bc Add new file/folder exists worker task after compilation of user programs (#131)
da3ada7 Better be safe in fors then sorry due to badly indexed elements
10b2342 Bugfix: repair possibly badly indexed arrays in DataInBox
v1.4.1
Changelog
- Proper synchronization of assignments which copies all needed items
- Various bugfixes and optimisations
Commits
89714f3 Exercise are update even on change of associated files
fea4435 Updateable and Deleteable traits. Assignment and Exercise updated timestamp is properly updated. (#129)
92cc14b UpdatedAt of exercise and assignment added to assignment sync info.
0f37dc6 Fix tests
0d95b87 Runtime environments also has to be synced
307a39b Sync supplementary and attachment files in assignment
78e3527 Export current pipelines