summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.txt4
-rw-r--r--README.rst60
-rw-r--r--online_test/__init__.py2
-rw-r--r--requirements/requirements-common.txt2
-rw-r--r--yaksh/migrations/0020_release_0_21_0.py28
5 files changed, 86 insertions, 10 deletions
diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index e50ecd3..d37f7c7 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -1,3 +1,7 @@
+== 0.21.0 (02-07-2020) ===
+
+* Added support for hiding test cases for code questions
+
== 0.20.2 (02-06-2020) ===
* Added a custom filter to convert str objects to int in templates
diff --git a/README.rst b/README.rst
index c730fdf..3c5f3df 100644
--- a/README.rst
+++ b/README.rst
@@ -9,26 +9,41 @@ To get an overview of the Yaksh interface please refer to the user documentation
This is a Quickstart guide to help users setup a trial instance. If you wish to deploy Yaksh in a production environment here is a `Production Deployment Guide <https://github.com/FOSSEE/online\_test/blob/master/README\_production.rst>`_
Introduction
-^^^^^^^^^^^^
+============
This project provides an "exam" app that lets users take an online
programming quiz.
Features
-^^^^^^^^
+========
- Define fairly complicated programming problems and have users solve
the problem.
- Immediate verification of code solution.
-- Supports pretty much arbitrary coding questions in Python, C, C++ and
- simple Bash and uses "test cases" to test the implementations of the
- students.
-- Supports simple multiple choice questions and File uploads.
-- Since it runs on your Python, you could technically test any Python
+- Supports pretty much arbitrary coding questions in Python, C, C++, Java, R, Scilab and
+ Bash.
+- Supports Multiple choice, Fill in the blanks, Arrange options and File upload based questions.
+- Since it runs on Python, you could technically test any Python
based library.
+- Create course with lessons and quiz for online learning.
+- Almost real-time monitoring for quiz.
+- Supports automatic and manual grading, regrading of quiz.
+- Add grading system to the course.
- Scales to over 500+ simultaneous users.
- Distributed under the BSD license.
+To get a glimpse of all the available features check our demo website https://yaksh-demo.fossee.in. It has 50 teacher and student login.
+
+**Sample teacher login**
+
+Username:- teacher1
+Password:- teacher1
+
+**Sample student login**
+
+Username:- student1
+Password:- student1
+
Requirements
============
@@ -36,6 +51,7 @@ Python 3.6, 3.7, 3.8
Django 3.0.3
+Celery 4.4.2
Installation
============
@@ -55,6 +71,34 @@ miniconda. Download miniconda with Python 3.6 and above.
**Pre-Requisite**
+* **Install redis server**
+
+ Redis is required for celery. Celery runs a background task to re-evaluate the submissions.
+
+ ::
+
+ sudo apt install redis-server (Debian/Ubuntu)
+
+ yum install redis (Centos)
+
+* **Start redis server**
+
+ ::
+
+ systemctl start redis
+
+* **Check redis server status**
+
+ ::
+
+ systemctl status redis
+
+* **Run celery worker**
+
+ ::
+
+ celery -A online_test worker -B
+
* Ensure `pip <https://pip.pypa.io/en/latest/installing.html>`_ is installed
**Installing Yaksh**
@@ -181,4 +225,4 @@ Copyright (c) 2011-2017 `FOSSEE <https://fossee.in>`_
.. |Version Status| image:: https://badge.fury.io/gh/fossee%2Fonline_test.svg
:target: https://badge.fury.io/gh/fossee%2Fonline_test
.. |Coverage Status| image:: https://codecov.io/gh/fossee/online_test/branch/master/graph/badge.svg
- :target: https://codecov.io/gh/fossee/online_test \ No newline at end of file
+ :target: https://codecov.io/gh/fossee/online_test
diff --git a/online_test/__init__.py b/online_test/__init__.py
index dcc123e..63a9920 100644
--- a/online_test/__init__.py
+++ b/online_test/__init__.py
@@ -4,4 +4,4 @@ from online_test.celery_settings import app as celery_app
__all__ = ('celery_app',)
-__version__ = '0.20.2'
+__version__ = '0.21.0'
diff --git a/requirements/requirements-common.txt b/requirements/requirements-common.txt
index db5de43..b9901ae 100644
--- a/requirements/requirements-common.txt
+++ b/requirements/requirements-common.txt
@@ -1,6 +1,6 @@
-r requirements-codeserver.txt
invoke==0.21.0
-django==3.0.3
+django==3.0.7
django-taggit==1.2.0
pytz==2019.3
requests-oauthlib>=0.6.1
diff --git a/yaksh/migrations/0020_release_0_21_0.py b/yaksh/migrations/0020_release_0_21_0.py
new file mode 100644
index 0000000..ac88eda
--- /dev/null
+++ b/yaksh/migrations/0020_release_0_21_0.py
@@ -0,0 +1,28 @@
+# Generated by Django 3.0.3 on 2020-07-02 08:13
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('yaksh', '0019_release_0_20_0'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='hooktestcase',
+ name='hidden',
+ field=models.BooleanField(default=False),
+ ),
+ migrations.AddField(
+ model_name='standardtestcase',
+ name='hidden',
+ field=models.BooleanField(default=False),
+ ),
+ migrations.AddField(
+ model_name='stdiobasedtestcase',
+ name='hidden',
+ field=models.BooleanField(default=False),
+ ),
+ ]