From 3a3f071ad33cdd56d63816bba7abdbfcc111b464 Mon Sep 17 00:00:00 2001 From: Sharansrj567 Date: Thu, 19 Oct 2023 20:50:11 -0400 Subject: [PATCH 1/4] fix mongo credentials --- .github/workflows/pytest_ci.yml | 49 ++++++++++++++++----------------- backend/test_app.py | 2 +- 2 files changed, 25 insertions(+), 26 deletions(-) diff --git a/.github/workflows/pytest_ci.yml b/.github/workflows/pytest_ci.yml index cf5a9d85..9558d95c 100644 --- a/.github/workflows/pytest_ci.yml +++ b/.github/workflows/pytest_ci.yml @@ -7,33 +7,32 @@ on: push: branches: - "main" - + jobs: build: - runs-on: ubuntu-latest env: - MONGO_USER: ${{ secrets.MONGO_USER }} - MONGO_PASS: ${{ secrets.MONGO_PASS }} + MONGO_USER: ${{ secrets.MONGO_USER }} + MONGO_PASS: ${{ secrets.MONGO_PASS }} steps: - - uses: actions/checkout@v2 - - name: Set up Python 3.9 - uses: actions/setup-python@v2 - with: - python-version: 3.9 - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install pytest pytest-cov coverage - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - pip install -r ./backend/requirements.txt - - name: Test with pytest, upload to codecov - run: | - cd ./backend - echo 'Created application.yml' - pwd - pytest --cov-report xml:cov.xml --cov=./ ./ - - name: "Upload coverage to Codecov" - uses: codecov/codecov-action@v1 - with: - fail_ci_if_error: true + - uses: actions/checkout@v2 + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install pytest pytest-cov coverage + if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + pip install -r ./backend/requirements.txt + - name: Test with pytest, upload to codecov + run: | + cd ./backend + echo 'Created application.yml' + pwd + pytest --cov-report xml:cov.xml --cov=./ ./ + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v1 + with: + fail_ci_if_error: true diff --git a/backend/test_app.py b/backend/test_app.py index c41f06f8..658b6167 100644 --- a/backend/test_app.py +++ b/backend/test_app.py @@ -32,7 +32,7 @@ def client(): password = info["password"] app.config["MONGODB_SETTINGS"] = { "db": "appTracker", - "host": f'mongodb+srv://{username}:{password}@cluster0.en3fo.mongodb.net/todolistDB?retryWrites="true"&w=majority', + "host": f'mongodb+srv://{username}:{password}@cluster0.en3fo.mongodb.net/todolistDB?retryWrites=true&w=majority', } db = MongoEngine() db.disconnect() From f1d69922041b3d0a08c9f154b0631b4ad815ec95 Mon Sep 17 00:00:00 2001 From: svruddarraju <76074996+svruddarraju@users.noreply.github.com> Date: Thu, 19 Oct 2023 20:57:45 -0400 Subject: [PATCH 2/4] Initial Project 2 Rubric --- docs/proj2rubric.md | 190 ++++++++++++++++++++++++-------------------- 1 file changed, 102 insertions(+), 88 deletions(-) diff --git a/docs/proj2rubric.md b/docs/proj2rubric.md index 325930de..31f1fea0 100644 --- a/docs/proj2rubric.md +++ b/docs/proj2rubric.md @@ -1,88 +1,102 @@ -| Category | Self-Assessment | Supporting Links (if any) | -| --------------------------------------- | --------------- | ------------------------- | -| What your software does | | | -| 1.1: High-level overview | | | -| 1.2: User description | | | -| 1.3: Case studies | | | -| Your project's identity | | | -| 2.1: Unique name | | | -| 2.2: Trademark violations | | | -| Availability of your software | | | -| 3.1: Deployable package | | | -| 3.2: Free availability | | | -| 3.3: Public source code | | | -| 3.4: Hosted in repository | | | -| Your software's documentation | | | -| 4.1: Availability | | | -| 4.2: Quick start guide | | | -| 4.3: Step-by-step guide | | | -| 4.4: Comprehensive guide | | | -| 4.5: Troubleshooting | | | -| 4.6: API documentation | | | -| 4.7: Revision control | | | -| 4.8: Release history | | | -| How you support your software | | | -| 5.1: User help | | | -| 5.2: Support description | | | -| 5.3: Support email/forum | | | -| 5.4: Multiple support recipients | | | -| 5.5: Ticketing system | | | -| 5.6: Public ticketing | | | -| Your software's maintainability | | | -| 6.1: Modular architecture | | | -| 6.2: Coding standards | | | -| Open standards and your software | | | -| 7.1: Data formats | | | -| 7.2: Communications | | | -| Your software's portability | | | -| 8.1: Cross-platform | | | -| Your software and accessibility | | | -| 9.1: Accessibility | | | -| 9.2: Accessible docs | | | -| How you manage your source code | | | -| 10.1: Revision control | | | -| 10.2: Release snapshots | | | -| 10.3: Tagged releases | | | -| 10.4: Stable branch | | | -| 10.5: Repository backup | | | -| Building and installing your software | | | -| 11.1: Build instructions | | | -| 11.2: Automated build | | | -| 11.3: Deployment guide | | | -| 11.4: Dependency list | | | -| 11.5: Dependency versions | | | -| 11.6: Dependency licenses | | | -| 11.7: Dependency tools | | | -| 11.8: Post-build tests | | | -| How you test your software | | | -| 12.1: Automated tests | | | -| 12.2: Periodic tests | | | -| 12.3: Continuous integration | | | -| 12.4: Public test results | | | -| 12.5: Documented manual tests | | | -| How you engage with your community | | | -| 13.1: Regular updates | | | -| 13.2: Project statistics | | | -| 13.3: Success stories | | | -| 13.4: Partner list | | | -| 13.5: Publication list | | | -| 13.6: Third-party publications | | | -| 13.7: Source code notifications | | | -| 13.8: Governance model | | | -| How you manage contributions | | | -| 14.1: Accept contributions | | | -| 14.2: Contributions policy | | | -| 14.3: Public policy | | | -| 14.4: Contributor copyright | | | -| Your software's copyright and licensing | | | -| 15.1: Copyright statement | | | -| 15.2: Source code copyright | | | -| 15.3: Software license | | | -| 15.4: Open source license | | | -| 15.5: OSI-approved license | | | -| 15.6: License headers | | | -| 15.7: Recommended citation | | | -| Your plans for the future | | | -| 16.1: Project roadmap | | | -| 16.2: Funding description | | | -| 16.3: Deprecation announcements | | | +| Notes | Score (0 - 3) | Evidence | +| --- | --- | --- | +| Video | 3 | README has a video of all functionality | +| Workload is spread over the whole team (one team member is often X times more productive than the others...) | 3 | Responsibility was spread evenly between the group members in terms of functionality but nevertheless, here is a track record that everyone is contributing a lot | +| Number of commits | 3 | Overall, there were a significant number of quality commits - [GitHub Commits](https://github.com/SETeam59/application-tracking-system/commits/main) | +| Number of commits: by different people | 3 | "Saketh - 3 (under different account) + Sharan - Nayan - Hruthwik -" | +| Issues reports: there are many | 3 | All code changes had relevant issues they were linked to: [GitHub Issues](https://github.com/SETeam59/application-tracking-system/issues?q=is:open+is:issue) | +| Issues are being closed | 3 | Issues are closed after code-related branches were closed | +| DOI badge: exists | 3 | in README | +| Docs: doco generated, format not ugly | 3 | README, show the rest of things | +| Docs: what: point descriptions of each class/function (in isolation) | | +| Docs: how: for common use cases X, Y, Z mini-tutorials showing worked examples on how to do X, Y, Z | 3 | README includes steps of all the different functionality with screenshots | +| Docs: why: docs tell a story, motivate the whole thing, deliver a punchline that makes you want to rush out and use the thing | 3 | README and Advertisement | +| Docs: short video, animated, hosted on your repo. That convinces people why they want to work on your code. | 3 | Advertisement in README | +| Use of version control tools | 3 | Used GitHub for VC | +| Use of style checkers | 3 | Super Linter in GitHub actions | +| Use of code formatters | 3 | Super Linter in GitHub actions | +| Use of syntax checkers | 3 | "Super Linter in GitHub actions | +| Use of code coverage | Y | +| Other automated analysis tools | 3 | Pylint, CodeCoverage, GitHub Actions, Pytest | +| Test cases exist | Y | +| Test cases are routinely executed | 3 | Tests are executed on every commit, GitHub Actions | +| The files CONTRIBUTING.md lists coding standards and lots of tips on how to extend the system without screwing things up | 3 | [Contributing.md](https://github.com/Sharansrj567/application-tracking-system/blob/ui-v2/Contributing.md) | +| Issues are discussed before they are closed | 2 | Issues have relevant comments | +| Chat channel: exists | 3 | Show WhatsApp Group | +| Test cases: a large proportion of the issues related to handling failing cases | | +| Evidence that the whole team is using the same tools: everyone can get to all tools and files | 3 | All development tools used are free, and the dependency list is available to everyone on GH | +| Evidence that the whole team is using the same tools (e.g. config files in the repo, updated by lots of different people) | 3 | Installation steps and requirements.txt file ensure that everyone is using the same tools for development | +| Evidence that the whole team is using the same tools (e.g. tutor can ask anyone to share the screen, they demonstrate the system running on their computer) | 3 | All tools needed for development are listed in the README under the installation section | +| Evidence that the members of the team are working across multiple places in the code base | 3 | All group members worked on multiple features of the application | +| Short release cycles | 1 | | +| Online sustainability evaluation | | +| Does your website and documentation provide a clear, high-level overview of your software? | Y | README | +| Does your website and documentation clearly describe the type of user who should use your software? | Y | People who want to manage their job applications easily | +| Do you publish case studies to show how your software has been used by yourself and others? | Y | Screenshots and steps on the README | +| Is the name of your project/software unique? | Y | | +| Is your project/software name free from trademark violations? | Y | | +| Is your software available as a package that can be deployed without building it? | Y | | +| Is your software available for free? | Y | | +| Is your source code publicly available to download, either as a downloadable bundle or via access to a source code repository? | Y | | +| Is your software hosted in an established, third-party repository like GitHub (https://github.com) | Y | | +| Is your documentation clearly available on your website or within your software? | Y | README and other .md docs | +| Does your documentation include a "quick start" guide, that provides a short overview of how to use your software with some basic examples of use? | Y | | +| If you provide more extensive documentation, does this provide clear, step-by-step instructions on how to deploy and use your software? | Y | README has usage and installation steps | +| Do you provide a comprehensive guide to all your software’s commands, functions, and options? | Y | | +| Do you provide troubleshooting information that describes the symptoms and step-by-step solutions for problems and error messages? | Y | Common issues are addressed in README such as not having permissions to run the startup and shutdown scripts | +| If your software can be used as a library, package, or service by other software, do you provide comprehensive API documentation? | Y | Doc that describes all functionality | +| Do you store your documentation under revision control with your source code? | Y | | +| Do you publish your release history e.g. release data, version numbers, key features of each release, etc. on your website or in your documentation? | Y | | +| Does your software describe how a user can get help with using your software? | N | | +| Does your website and documentation describe what support, if any, you provide to users and developers? | N | | +| Does your project have an e-mail address or forum that is solely for supporting users? | Y | | +| Are e-mails to your support e-mail address received by more than one person? | N | | +| Does your project have a ticketing system to manage bug reports and feature requests? | N | | +| Is your project's ticketing system publicly visible to your users, so they can view bug reports and feature requests? | N | | +| Is your software’s architecture and design modular? | Y | | +| Does your software use an accepted coding standard or convention? | Y | | +| Does your software allow data to be imported and exported using open data formats? e.g. GIF, SVG, HTML, XML, tar, zip, CSV, JSON, NetCDF, or domain-specific ones | N | | +| Does your software allow communications using open communications protocols? e.g. HTTP, FTP, XMPP, SOAP over HTTP, or domain-specific ones | Y | | +| Is your software cross-platform compatible? e.g. does it run under two or more of Windows, Unix/Linux, and Mac OS X, or can be used from within two or more of Internet Explorer, Chrome, Firefox, and Safari? | Y | | +| Does your software adhere to appropriate accessibility conventions or standards? | Y | | +| Does your documentation adhere to appropriate accessibility conventions or standards? | Y | | +| Is your source code stored in a repository under revision control? | Y | | +| Is each source code release a snapshot of the repository? | Y | | +| Are releases tagged in the repository? | Y | | +| Is there a branch of the repository that is always stable? (i.e. tests always pass, code always builds successfully) | N | | +| Do you back-up your repository? | Y | | +| Do you provide publicly-available instructions for building your software from the source code? | Y | | +| Can you build, or package, your software using an automated tool? | Y | | +| Do you provide publicly-available instructions for deploying your software? | Y | | +| Does your documentation list all third-party dependencies? | Y | | +| Does your documentation list the version number for all third-party dependencies? | Y | | +| Does your software list the web address, and licenses for all third-party dependencies and say whether the dependencies are mandatory or optional? | Y | | +| Can you download dependencies using a dependency management tool or package manager? | Y | | +| Do you have tests that can be run after your software has been built or deployed to show whether the build or deployment has been successful? | Y | | +| Do you have an automated test suite for your software? | Y | | +| Do you have a framework to periodically (e.g. nightly) run your tests on the latest version of the source code? | Y | | +| Do you use continuous integration, automatically running tests whenever changes are made to your source code? | Y | | +| Are your test results publicly visible | Y | | +| Are all manually-run tests documented? | Y | | +| Does your project have resources (e.g. blog, Twitter, RSS feed, Facebook page, wiki, mailing list) that are regularly updated with information about your software? | N | | +| Does your website state how many projects and users are associated with your project? | N | | +| Do you provide success stories on your website? | N | | +| Do you list your important partners and collaborators on your website? | N | | +| Do you list your project's publications on your website or link to a resource where these are available? | Y | | +| Do you list third-party publications that refer to your software on your website or link to a resource where these are available? | Y | | +| Can users subscribe to notifications to changes to your source code repository? | N | | +| If your software is developed as an open source project (and, not just a project developing open source software), do you have a governance model? | Y | - | +| Do you accept contributions (e.g. bug fixes, enhancements, documentation updates, tutorials) from people who are not part of your project? | Y | - | +| Do you have a contributions policy? | Y | - | +| Is your contributions' policy publicly available? | Y | - | +| Do contributors keep the copyright/IP of their contributions? | N | - | +| Does your website and documentation clearly state the copyright owners of your software and documentation? | N | - | +| Does each of your source code files include a copyright statement? | N | - | +| Does your website and documentation clearly state the license of your software? | Y | - | +| Is your software released under an open source license? | Y | - | +| Is your software released under an OSI-approved open-source license? | Y | - | +| Does each of your source code files include a license header? | Y | - | +| Do you have a recommended citation for your software? | N | - | +| Does your website or documentation include a project roadmap (a list of project and development milestones for the next 3, 6 and 12 months)? | Y | - | +| Does your website or documentation describe how your project is funded, and the period over which funding is guaranteed? | N | - | +| Do you make timely announcements of the deprecation of components, APIs, etc.? | N | - | From 790274fc17e102df898be4b5b37ed7f6ca3ce306 Mon Sep 17 00:00:00 2001 From: hruthwikkk Date: Thu, 19 Oct 2023 21:00:53 -0400 Subject: [PATCH 3/4] Added DOI Badge in readme.md --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 9a117f05..bdd9e981 100644 --- a/readme.md +++ b/readme.md @@ -4,7 +4,7 @@ [![GitHub license](https://img.shields.io/github/license/kingan1/application-tracking-system)](https://github.com/SETeam59/application-tracking-system/blob/main/LICENSE) -[![DOI](https://zenodo.org/badge/707286618.svg)](https://zenodo.org/badge/latestdoi/707286618) +[![DOI](https://zenodo.org/badge/707286618.svg)](https://zenodo.org/doi/10.5281/zenodo.10023565) [![codecov](https://codecov.io/gh/kingan1/application-tracking-system/branch/main/graph/badge.svg)](https://codecov.io/gh/kingan1/application-tracking-system) ![GitHub issues](https://img.shields.io.github/issues/kingan1/application-tracking-system) ![GitHub issues](https://img.shields.io/github/issues-closed/kingan1/application-tracking-system) From 109054125bf6a1ea3ca27a166e9b2b282d8c3ad8 Mon Sep 17 00:00:00 2001 From: svruddarraju <76074996+svruddarraju@users.noreply.github.com> Date: Thu, 19 Oct 2023 21:02:03 -0400 Subject: [PATCH 4/4] Project 2 Scorecard --- docs/proj2rubric.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/proj2rubric.md b/docs/proj2rubric.md index 31f1fea0..eafedd5b 100644 --- a/docs/proj2rubric.md +++ b/docs/proj2rubric.md @@ -3,12 +3,12 @@ | Video | 3 | README has a video of all functionality | | Workload is spread over the whole team (one team member is often X times more productive than the others...) | 3 | Responsibility was spread evenly between the group members in terms of functionality but nevertheless, here is a track record that everyone is contributing a lot | | Number of commits | 3 | Overall, there were a significant number of quality commits - [GitHub Commits](https://github.com/SETeam59/application-tracking-system/commits/main) | -| Number of commits: by different people | 3 | "Saketh - 3 (under different account) + Sharan - Nayan - Hruthwik -" | +| Number of commits: by different people | 3 | Note that Saketh commited code under a different account "svruddar" https://github.com/SETeam59/application-tracking-system/graphs/contributors | | Issues reports: there are many | 3 | All code changes had relevant issues they were linked to: [GitHub Issues](https://github.com/SETeam59/application-tracking-system/issues?q=is:open+is:issue) | | Issues are being closed | 3 | Issues are closed after code-related branches were closed | | DOI badge: exists | 3 | in README | | Docs: doco generated, format not ugly | 3 | README, show the rest of things | -| Docs: what: point descriptions of each class/function (in isolation) | | +| Docs: what: point descriptions of each class/function (in isolation) | 3 | | Docs: how: for common use cases X, Y, Z mini-tutorials showing worked examples on how to do X, Y, Z | 3 | README includes steps of all the different functionality with screenshots | | Docs: why: docs tell a story, motivate the whole thing, deliver a punchline that makes you want to rush out and use the thing | 3 | README and Advertisement | | Docs: short video, animated, hosted on your repo. That convinces people why they want to work on your code. | 3 | Advertisement in README |