coursemology-polyglot 0.2.9.3 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 1f80970871fc79831a433398f1a299575746d66f
4
- data.tar.gz: 7d0843d5d4d7443d29fd50ed73d9a05ccc2dd0e9
2
+ SHA256:
3
+ metadata.gz: 4c0f87808237817c596edac6ca947524023bb99fbe259c7ec066abe7543d7d35
4
+ data.tar.gz: bcbae8b7f2e857f2d574c738e13a2df65b4cda056e992a2085f30f8f46038e8a
5
5
  SHA512:
6
- metadata.gz: 162cfd57b53cd99414ece2e74fc5f97a40313502e0fc3eb7356e52cd261381070bcfd0f182c6c0362d98218aeeb571bd2b367ef4d7b5886c144793a5942f3bf4
7
- data.tar.gz: 3bf9195eb92baa48b5e8bce23346b5660d8204977af493f391d608d25e7dc5440b445e13c9b93e4179baf92bc862dd286ab50273c341b30e699fdb7ea3592e86
6
+ metadata.gz: f9c9288ff62d5a2b3cf230b7565b5016f2b06a88f5c83cb406e1a091586be1d98c5ca797ee279328066be22397b4eb35bed7c9516dafead732e20996f3c48929
7
+ data.tar.gz: 0d0491cb3952f62db93fce56b88474e4ba62de24fe502d3ce5ea521fd7870c2701a7b5279c7f9157576e87d543fad46f12a04ee03ece7d768249a10b45212dd3
data/.travis.yml CHANGED
@@ -1,9 +1,8 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.1.8
5
- - 2.2.4
6
4
  - 2.3.0
5
+ - 2.5.3
7
6
  - ruby-head
8
7
  matrix:
9
8
  allow_failures:
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Coursemology Polyglot [![Build Status](https://travis-ci.org/Coursemology/polyglot.svg?branch=master)](https://travis-ci.org/Coursemology/polyglot)
2
2
  [![Code Climate](https://codeclimate.com/github/Coursemology/polyglot/badges/gpa.svg)](https://codeclimate.com/github/Coursemology/polyglot) [![Coverage Status](https://coveralls.io/repos/Coursemology/polyglot/badge.svg?branch=master&service=github)](https://coveralls.io/github/Coursemology/polyglot?branch=master) [![Security](https://hakiri.io/github/Coursemology/polyglot/master.svg)](https://hakiri.io/github/Coursemology/polyglot/master) [![Inline docs](http://inch-ci.org/github/coursemology/polyglot.svg?branch=master)](http://inch-ci.org/github/coursemology/polyglot) [![Gem Version](https://badge.fury.io/rb/coursemology-polyglot.svg)](https://badge.fury.io/rb/coursemology-polyglot)
3
3
 
4
- This is the library common between the web application and the evaluator for determining the
4
+ This is the library common between the web application and the evaluator for determining the
5
5
  programming languages supported in Coursemology.
6
6
 
7
7
  ## Usage
@@ -28,5 +28,19 @@ Then, in your application:
28
28
  Coursemology::Polyglot.eager_load!
29
29
  ```
30
30
 
31
- The Polyglot library needs to be eager loaded so that it knows which languages are defined.
31
+ The Polyglot library needs to be eager loaded so that it knows which languages are defined.
32
32
  Otherwise, the list of `concrete_languages` will be empty.
33
+
34
+ ## Version 0.3 upgrade
35
+ ### Breaking changes
36
+ Before version 0.3, Coursemology polyglot only supported Java 8, using docker image `coursemology/evaluator-image-java:latest`.
37
+
38
+ Version 0.3 adds support for Java 11.
39
+
40
+ To ensure old questions using Java continue to evaluate correctly, you need to run a migration to change Java's record in `polyglot_languages` table in your database.
41
+
42
+ The SQL command below summarizes the necessary changes, to be run *right before* upgrading to version 3.0:
43
+
44
+ ```
45
+ UPDATE polyglot_languages SET type = 'Coursemology::Polyglot::Language::Java::Java8', name = 'Java 8' where type = 'Coursemology::Polyglot::Language::Java';
46
+ ```
@@ -1,4 +1,11 @@
1
1
  class Coursemology::Polyglot::Language::Java < Coursemology::Polyglot::Language
2
2
  syntax_highlighter 'java'
3
- concrete_language 'Java', docker_image: 'java'
3
+
4
+ class Java8 < Coursemology::Polyglot::Language::Java
5
+ concrete_language 'Java 8', docker_image: 'java:8'
6
+ end
7
+
8
+ class Java11 < Coursemology::Polyglot::Language::Java
9
+ concrete_language 'Java 11', docker_image: 'java:11'
10
+ end
4
11
  end
@@ -17,4 +17,12 @@ class Coursemology::Polyglot::Language::Python < Coursemology::Polyglot::Languag
17
17
  class Python3Point6 < Coursemology::Polyglot::Language::Python
18
18
  concrete_language 'Python 3.6', docker_image: 'python:3.6'
19
19
  end
20
+
21
+ class Python3Point7 < Coursemology::Polyglot::Language::Python
22
+ concrete_language 'Python 3.7', docker_image: 'python:3.7'
23
+ end
24
+
25
+ class Python3Point9 < Coursemology::Polyglot::Language::Python
26
+ concrete_language 'Python 3.9', docker_image: 'python:3.9'
27
+ end
20
28
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  module Coursemology; end
3
3
  module Coursemology::Polyglot
4
- VERSION = '0.2.9.3'.freeze
4
+ VERSION = '0.3.2'.freeze
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coursemology-polyglot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.9.3
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joel Low
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-12 00:00:00.000000000 Z
11
+ date: 2021-09-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -145,7 +145,6 @@ extra_rdoc_files: []
145
145
  files:
146
146
  - ".gitignore"
147
147
  - ".hound.yml"
148
- - ".idea/Coursemology Polyglot.iml"
149
148
  - ".rspec"
150
149
  - ".rubocop.unhound.yml"
151
150
  - ".rubocop.yml"
@@ -185,7 +184,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
185
184
  version: '0'
186
185
  requirements: []
187
186
  rubyforge_project:
188
- rubygems_version: 2.6.11
187
+ rubygems_version: 2.7.6
189
188
  signing_key:
190
189
  specification_version: 4
191
190
  summary: Coursemology polyglot definitions
@@ -1,9 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <module type="RUBY_MODULE" version="4">
3
- <component name="NewModuleRootManager" inherit-compiler-output="true">
4
- <exclude-output />
5
- <content url="file://$MODULE_DIR$" />
6
- <orderEntry type="inheritedJdk" />
7
- <orderEntry type="sourceFolder" forTests="false" />
8
- </component>
9
- </module>