Skip to content

Commit 6ef85c8

Browse files
authored
Merge branch 'main' into doc-config-options
2 parents c14fa98 + a241a96 commit 6ef85c8

File tree

74 files changed

+1449
-522
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+1449
-522
lines changed

Gemfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
source 'https://rubygems.org'
33

44
group :jekyll_plugins do
5-
gem "github-pages", "231"
5+
gem "github-pages", "232"
66
end
77

88
gem 'wdm', '>= 0.1.1' if Gem.win_platform?
99

10-
gem "webrick", "~> 1.8"
10+
gem "webrick", "~> 1.9"
1111

1212
gem 'html-proofer', "~> 3.19.4"
1313

Gemfile.lock

Lines changed: 40 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
GEM
22
remote: https://rubygems.org/
33
specs:
4-
activesupport (7.1.3.2)
4+
activesupport (7.1.3.4)
55
base64
66
bigdecimal
77
concurrent-ruby (~> 1.0, >= 1.0.2)
@@ -11,19 +11,20 @@ GEM
1111
minitest (>= 5.1)
1212
mutex_m
1313
tzinfo (~> 2.0)
14-
addressable (2.8.6)
15-
public_suffix (>= 2.0.2, < 6.0)
14+
addressable (2.8.7)
15+
public_suffix (>= 2.0.2, < 7.0)
1616
base64 (0.2.0)
17-
bigdecimal (3.1.7)
17+
bigdecimal (3.1.8)
1818
coffee-script (2.4.1)
1919
coffee-script-source
2020
execjs
2121
coffee-script-source (1.12.2)
2222
colorator (1.1.0)
2323
commonmarker (0.23.10)
24-
concurrent-ruby (1.2.3)
24+
concurrent-ruby (1.3.3)
2525
connection_pool (2.4.1)
26-
dnsruby (1.71.0)
26+
csv (3.3.0)
27+
dnsruby (1.72.2)
2728
simpleidn (~> 0.2.1)
2829
drb (2.2.1)
2930
em-websocket (0.5.3)
@@ -33,20 +34,21 @@ GEM
3334
ffi (>= 1.15.0)
3435
eventmachine (1.2.7)
3536
execjs (2.9.1)
36-
faraday (2.9.0)
37+
faraday (2.10.1)
3738
faraday-net_http (>= 2.0, < 3.2)
38-
faraday-net_http (3.1.0)
39+
logger
40+
faraday-net_http (3.1.1)
3941
net-http
40-
ffi (1.16.3)
41-
ffi (1.16.3-x64-mingw-ucrt)
42+
ffi (1.17.0-arm64-darwin)
43+
ffi (1.17.0-x86_64-linux-gnu)
4244
forwardable-extended (2.6.0)
4345
gemoji (4.1.0)
44-
github-pages (231)
46+
github-pages (232)
4547
github-pages-health-check (= 1.18.2)
46-
jekyll (= 3.9.5)
48+
jekyll (= 3.10.0)
4749
jekyll-avatar (= 0.8.0)
4850
jekyll-coffeescript (= 1.2.2)
49-
jekyll-commonmark-ghpages (= 0.4.0)
51+
jekyll-commonmark-ghpages (= 0.5.1)
5052
jekyll-default-layout (= 0.1.5)
5153
jekyll-feed (= 0.17.0)
5254
jekyll-gist (= 1.5.0)
@@ -83,9 +85,10 @@ GEM
8385
liquid (= 4.0.4)
8486
mercenary (~> 0.3)
8587
minima (= 2.5.1)
86-
nokogiri (>= 1.13.6, < 2.0)
88+
nokogiri (>= 1.16.2, < 2.0)
8789
rouge (= 3.30.0)
8890
terminal-table (~> 1.4)
91+
webrick (~> 1.8)
8992
github-pages-health-check (1.18.2)
9093
addressable (~> 2.3)
9194
dnsruby (~> 1.60)
@@ -104,11 +107,12 @@ GEM
104107
typhoeus (~> 1.3)
105108
yell (~> 2.0)
106109
http_parser.rb (0.8.0)
107-
i18n (1.14.4)
110+
i18n (1.14.5)
108111
concurrent-ruby (~> 1.0)
109-
jekyll (3.9.5)
112+
jekyll (3.10.0)
110113
addressable (~> 2.4)
111114
colorator (~> 1.0)
115+
csv (~> 3.0)
112116
em-websocket (~> 0.5)
113117
i18n (>= 0.7, < 2)
114118
jekyll-sass-converter (~> 1.0)
@@ -119,16 +123,17 @@ GEM
119123
pathutil (~> 0.9)
120124
rouge (>= 1.7, < 4)
121125
safe_yaml (~> 1.0)
126+
webrick (>= 1.0)
122127
jekyll-avatar (0.8.0)
123128
jekyll (>= 3.0, < 5.0)
124129
jekyll-coffeescript (1.2.2)
125130
coffee-script (~> 2.2)
126131
coffee-script-source (~> 1.12)
127132
jekyll-commonmark (1.4.0)
128133
commonmarker (~> 0.22)
129-
jekyll-commonmark-ghpages (0.4.0)
130-
commonmarker (~> 0.23.7)
131-
jekyll (~> 3.9.0)
134+
jekyll-commonmark-ghpages (0.5.1)
135+
commonmarker (>= 0.23.7, < 1.1.0)
136+
jekyll (>= 3.9, < 4.0)
132137
jekyll-commonmark (~> 1.4.0)
133138
rouge (>= 2.0, < 5.0)
134139
jekyll-default-layout (0.1.5)
@@ -214,7 +219,7 @@ GEM
214219
gemoji (>= 3, < 5)
215220
html-pipeline (~> 2.2)
216221
jekyll (>= 3.0, < 5.0)
217-
json (2.7.2)
222+
json (2.12.2)
218223
kramdown (2.4.0)
219224
rexml
220225
kramdown-parser-gfm (1.1.0)
@@ -223,34 +228,34 @@ GEM
223228
listen (3.9.0)
224229
rb-fsevent (~> 0.10, >= 0.10.3)
225230
rb-inotify (~> 0.9, >= 0.9.10)
231+
logger (1.6.0)
226232
mercenary (0.3.6)
227233
minima (2.5.1)
228234
jekyll (>= 3.5, < 5.0)
229235
jekyll-feed (~> 0.9)
230236
jekyll-seo-tag (~> 2.1)
231-
minitest (5.22.3)
237+
minitest (5.24.1)
232238
mutex_m (0.2.0)
233239
net-http (0.4.1)
234240
uri
235-
nokogiri (1.16.3-arm64-darwin)
241+
nokogiri (1.16.7-arm64-darwin)
236242
racc (~> 1.4)
237-
nokogiri (1.16.3-x64-mingw-ucrt)
238-
racc (~> 1.4)
239-
nokogiri (1.16.3-x86_64-linux)
243+
nokogiri (1.16.7-x86_64-linux)
240244
racc (~> 1.4)
241245
octokit (4.25.1)
242246
faraday (>= 1, < 3)
243247
sawyer (~> 0.9)
244248
parallel (1.24.0)
245249
pathutil (0.16.2)
246250
forwardable-extended (~> 2.6)
247-
public_suffix (5.0.4)
248-
racc (1.7.3)
251+
public_suffix (5.1.1)
252+
racc (1.8.1)
249253
rainbow (3.1.1)
250254
rb-fsevent (0.11.2)
251-
rb-inotify (0.10.1)
255+
rb-inotify (0.11.1)
252256
ffi (~> 1.0)
253-
rexml (3.2.6)
257+
rexml (3.3.4)
258+
strscan
254259
rouge (3.30.0)
255260
rubyzip (2.3.2)
256261
safe_yaml (1.0.5)
@@ -262,35 +267,29 @@ GEM
262267
sawyer (0.9.2)
263268
addressable (>= 2.3.5)
264269
faraday (>= 0.17.3, < 3)
265-
simpleidn (0.2.1)
266-
unf (~> 0.1.4)
270+
simpleidn (0.2.3)
271+
strscan (3.1.0)
267272
terminal-table (1.8.0)
268273
unicode-display_width (~> 1.1, >= 1.1.1)
269274
typhoeus (1.4.1)
270275
ethon (>= 0.9.0)
271276
tzinfo (2.0.6)
272277
concurrent-ruby (~> 1.0)
273-
unf (0.1.4)
274-
unf_ext
275-
unf_ext (0.0.9.1)
276-
unf_ext (0.0.9.1-x64-mingw-ucrt)
277278
unicode-display_width (1.8.0)
278279
uri (0.13.0)
279-
wdm (0.2.0)
280-
webrick (1.8.1)
280+
webrick (1.9.1)
281281
yell (2.2.2)
282282

283283
PLATFORMS
284284
arm64-darwin-22
285-
x64-mingw-ucrt
285+
arm64-darwin-23
286286
x86_64-linux
287287

288288
DEPENDENCIES
289-
github-pages (= 231)
289+
github-pages (= 232)
290290
html-proofer (~> 3.19.4)
291291
json
292-
wdm (>= 0.1.1)
293-
webrick (~> 1.8)
292+
webrick (~> 1.9)
294293

295294
BUNDLED WITH
296295
2.5.6

_docs/developer/developing_the_php_site/view.md

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ pattern.
1111
The [Controller](controller) will call the view. Let's have a look at
1212
an example `UserView.php`. It might have a function in it like this:
1313

14-
```PHP
14+
```php
1515
public function showUserDetails(UserModel $user) {
1616
$this->core->getOutput()->addInternalJs('user-details.js');
1717
$this->core->getOutput()->addInternalCss('user-details.css');
@@ -53,4 +53,45 @@ Finally, let's look at `UserDetails.twig`
5353
```
5454

5555
In this page, we use `user_id` and `favorite_color` to render information
56-
about the student.
56+
about the student.
57+
58+
## Another option: Rendering with Vue
59+
60+
Alternatively, instead of using Twig, we can use [Vue](https://vuejs.org/) instead.
61+
62+
To do this, first make a Vue page in `site/vue/src/pages` (for example, `site/vue/src/pages/UserDetails.vue`):
63+
```html
64+
<script setup lang='ts'>
65+
import { inject } from 'vue';
66+
67+
const userId = inject<string>('user_id') ?? '<no user provided>';
68+
const favoriteColor = inject<string>('favorite_color') ?? '<no color provided>';
69+
</script>
70+
71+
<template>
72+
<div class="content">
73+
{% raw %}{{ userId }}'s favorite color is {{ favoriteColor }}.{% endraw %}
74+
</div>
75+
</template>
76+
```
77+
78+
79+
To actually render this page, we will then need to use the `renderVue` function in our View (ex. `UserView.php`).
80+
81+
The first paramater of the `renderVue` takes the name of the page (the name of the `.vue` file minus the extension, in this case `UserDetails`), and the second parameter is the same as in `renderTwig`, an associative array of variables that are passed to the Vue page.
82+
83+
If we wanted our `UserView.php` example to render with Vue, it would have a function that might look like this:
84+
85+
```php
86+
public function showUserDetails(UserModel $user) {
87+
return $this->core->getOutput()->renderVue(
88+
'UserDetails',
89+
[
90+
'user_id' => $user->getUserId(),
91+
'favorite_color' => $user->getFavoriteColor()
92+
]
93+
);
94+
}
95+
```
96+
97+
To access the variables passed by the `renderVue` function in Vue, use [`inject`](https://vuejs.org/api/composition-api-dependency-injection.html#inject). The injection keys will be the same as the keys in the provided array. If the key provided to `inject` is not in the array passed to `renderVue`, it will return `undefined`.

_docs/developer/development_instructions/index.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -250,6 +250,15 @@ these changes.
250250
missing the hundreds of sample student submissions present in the
251251
full installation.
252252

253+
You can append the `--test_only_grading` flag to the above command to
254+
more closely mimic the version that is on the Cypress CI.
255+
256+
If you only need a certain courses, you can append each course name to
257+
the above command to only create the courses you want.
258+
259+
_NOTE: If you mistype a course, that course will not be created. If you
260+
only have mistyped courses, then no courses gets created._
261+
253262

254263
NOTE: This command will also have to be run twice a year on July 1st and January 1st when the test semester will change from fall to spring or vice versa.
255264

_docs/developer/getting_started/commit_to_PR_from_fork.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,15 @@ The instructions below are for command line use of git.
4040
```
4141
4242
Additionally, find the name of the fork on the fork's page on Github.
43-
The `fork_name` may simply be `Submitty`, or the author may have chosen to another name.
43+
The `fork_name` may simply be `Submitty`, or the author may have chosen another name.
44+
45+
Note: make sure your git credentials are set before pulling or pushing to a forked
46+
repo. You can do this with the following commands. Use the `--global` flag if you
47+
want to set this outside of just Submitty.
48+
```
49+
git config user.name "Your Name"
50+
git config user.email "Your Email"
51+
```
4452
4553
4654
3. Next, make a local branch on your computer in your working repository

0 commit comments

Comments
 (0)