Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added tokenizers: Scala3, C, C++, MATLAB #71

Merged
merged 1 commit into from
Jan 27, 2025

Conversation

Harman-Aalto
Copy link
Contributor

@Harman-Aalto Harman-Aalto commented Jan 21, 2025

-Added Pygments library to requirements
-Pygments library can be used to add even more tokenizers for the future
-Checksum of submitted source code is now calculated by ignoring the injected separator string in the first and last line of the file
-New tokenizers for languages: Scala3, C, C++, MATLAB #30
-Scala tokenizer depends on the outdated library Scalariform #33

Description

What?

Added new tokenizers and update Scala tokenizer. Removed Scalariform.

Why?

These new tokenizers are useful. Scalariform library removed due it being outdated.

How?

Used the Pygments library in Python

Fixes #30
Fixes #33

Testing

Remember to add or update unit tests for new features and changes.

What type of test did you run?

  • Accessibility test using the WAVE extension.
  • Django unit tests.
  • Selenium tests.
  • Other test. (Add a description below)
  • Manual testing.

For each tokenizer a few excerise files were created and uploaded into Radar and those submissions were then compared to each other. Checked for 100% similarity with identical files and used other files for less than 100% similarity checking.

Did you test the changes in

  • Chrome
  • Firefox
  • This pull request cannot be tested in the browser.

Think of what is affected by these changes and could become broken

Translation

Programming style

  • Did you follow our style guides?
  • Did you use Python type hinting in all functions that you added or edited? (type hints for function parameters and return values)

Have you updated the README or other relevant documentation?

  • documents inside the doc directory.
  • README.md.
  • Aplus Manual.
  • Other documentation (mention below which documentation).

Is it Done?

  • Reviewer has finished the code review
  • After the review, the developer has made changes accordingly
  • Customer/Teacher has accepted the implementation of the feature

Clean up your git commit history before submitting the pull request!

@Harman-Aalto Harman-Aalto marked this pull request as draft January 22, 2025 10:49
@Harman-Aalto Harman-Aalto marked this pull request as ready for review January 22, 2025 11:24
@Harman-Aalto Harman-Aalto marked this pull request as draft January 24, 2025 10:01
@Harman-Aalto Harman-Aalto force-pushed the issue30 branch 3 times, most recently from cee7ee1 to 9da2295 Compare January 27, 2025 11:23
-Added Pygments library to requirements
-Pygments library can be used to add even more tokenizers for the future
-Checksum of submitted source code is now calculated by ignoring the injected separator string in the first and last line of the file
-New tokenizers for languages: Scala3, C, C++, MATLAB apluslms#30
-Scala tokenizer depends on the outdated library Scalariform apluslms#33
@Harman-Aalto Harman-Aalto marked this pull request as ready for review January 27, 2025 11:29
@mikaelGusse
Copy link
Contributor

Great stuff! Tried this out and seemed to work ok. During testing noticed that the highlighter is pretty broken sometimes. We should probably fix that quite soon.

@mikaelGusse mikaelGusse merged commit fea02cf into apluslms:master Jan 27, 2025
2 checks passed
@Harman-Aalto Harman-Aalto deleted the issue30 branch January 27, 2025 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants