Skip to content

Commit fe15fc4

Browse files
authored
Merge downstream (#66)
* add: NYJC-CSUL license v1.0 * fix: add Jekyll header * fix: remove duplicate header * Add 2026 UAS Calculator * feat: add reddit social link * dev: update to ruby 2.6.2 This is the current version of ruby provided in codespaces * dev: remove dev branch from matrix this branch no longer exists * dev: fix syn-branch not syncing
1 parent 1483811 commit fe15fc4

6 files changed

Lines changed: 80 additions & 37 deletions

File tree

.github/workflows/sync-branches.yml

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
runs-on: ubuntu-latest
1313
strategy:
1414
matrix:
15-
branches: [dev, content] # Add new branches here
15+
branches: [content] # Add new branches here
1616
steps:
1717
- name: Checkout Main Branch
1818
uses: actions/checkout@v3
@@ -27,13 +27,21 @@ jobs:
2727
- name: Sync with ${{ matrix.branch }}
2828
run: |
2929
TARGET_BRANCH="${{ matrix.branch }}"
30-
git checkout $TARGET_BRANCH
31-
git pull origin $TARGET_BRANCH || echo "No changes to pull for $TARGET_BRANCH"
32-
git reset --hard origin/main
33-
git merge --squash origin/main || echo "No changes to merge for $TARGET_BRANCH"
34-
if [ -n "$(git status --porcelain)" ]; then
35-
git commit -m "Squash merge changes from main into $TARGET_BRANCH"
36-
git push origin $TARGET_BRANCH || echo "Failed to push $TARGET_BRANCH"
30+
git fetch --all --prune
31+
# Checkout the target branch and ensure it's up-to-date with origin
32+
git checkout ${TARGET_BRANCH}
33+
git pull --no-rebase origin ${TARGET_BRANCH} || true
34+
35+
# Merge origin/main into the target branch (automatic merge).
36+
# Use --no-ff to create an explicit merge commit when required and
37+
# --no-edit to avoid interactive editor for the merge message.
38+
if git merge --no-ff --no-edit origin/main; then
39+
git push origin ${TARGET_BRANCH}
40+
else
41+
# On merge conflict, abort and push a backup branch so nothing is lost.
42+
git merge --abort || true
43+
BACKUP_BRANCH="backup/${TARGET_BRANCH}-merge-failed-$(date +%s)"
44+
git push origin HEAD:refs/heads/${BACKUP_BRANCH}
45+
echo "Merge failed. Backup pushed to ${BACKUP_BRANCH}. Exiting with failure."
46+
exit 1
3747
fi
38-
git reset --hard main
39-
git push origin $TARGET_BRANCH --force || echo "Failed to force push $TARGET_BRANCH"

Gemfile

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,12 @@
11
source "https://rubygems.org"
2+
3+
# Required from Ruby 3.4.0
4+
gem "base64"
5+
gem "bigdecimal"
6+
7+
# Required from Ruby 3.5.0
8+
gem "logger"
9+
210
# Hello! This is where you manage which Jekyll version is used to run.
311
# When you want to use a different version, change it below, save the
412
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:

Gemfile.lock

Lines changed: 8 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,16 @@ GEM
33
specs:
44
addressable (2.8.7)
55
public_suffix (>= 2.0.2, < 7.0)
6+
base64 (0.3.0)
7+
bigdecimal (3.3.1)
68
colorator (1.1.0)
79
concurrent-ruby (1.3.4)
810
csv (3.2.8)
911
em-websocket (0.5.3)
1012
eventmachine (>= 0.12.9)
1113
http_parser.rb (~> 0)
1214
eventmachine (1.2.7)
13-
ffi (1.17.0-x86_64-linux-gnu)
15+
ffi (1.17.2-x86_64-linux-gnu)
1416
forwardable-extended (2.6.0)
1517
http_parser.rb (0.8.0)
1618
i18n (1.14.6)
@@ -47,6 +49,7 @@ GEM
4749
listen (3.9.0)
4850
rb-fsevent (~> 0.10, >= 0.10.3)
4951
rb-inotify (~> 0.9, >= 0.9.10)
52+
logger (1.7.0)
5053
mercenary (0.3.6)
5154
monophase (0.1.0)
5255
jekyll (~> 3.9)
@@ -71,42 +74,20 @@ GEM
7174
webrick (1.9.0)
7275

7376
PLATFORMS
74-
aarch64-linux
75-
aarch64-linux-android
76-
aarch64-linux-gnu
77-
aarch64-linux-musl
78-
aarch64-mingw-ucrt
79-
arm-linux-androideabi
80-
arm-linux-gnu
81-
arm-linux-gnueabihf
82-
arm-linux-musl
83-
arm-linux-musleabihf
84-
arm64-darwin
85-
riscv64-linux-android
86-
riscv64-linux-gnu
87-
riscv64-linux-musl
88-
ruby
89-
x86-cygwin
90-
x86-linux
91-
x86-linux-android
92-
x86-linux-gnu
93-
x86-linux-musl
94-
x86-mingw-ucrt
95-
x86_64-cygwin
96-
x86_64-darwin
97-
x86_64-linux-android
9877
x86_64-linux-gnu
99-
x86_64-linux-musl
10078

10179
DEPENDENCIES
80+
base64
81+
bigdecimal
10282
http_parser.rb (~> 0.6.0)
10383
jekyll (~> 3.9)
10484
jekyll-feed (~> 0.12)
85+
logger
10586
monophase
10687
tzinfo (>= 1, < 3)
10788
tzinfo-data
10889
wdm (~> 0.1)
10990
webrick (~> 1.9)
11091

11192
BUNDLED WITH
112-
2.5.11
93+
2.6.2

_data/social.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,6 @@
44
- title: GitHub
55
url: https://github.com/nyjc-computing
66
icon: fab fa-github
7+
- title: Reddit
8+
url: https://www.reddit.com/u/Legitimate_Fact9099/s/Yn4u8KSPt5
9+
icon: fab fa-reddit

pages/LICENSE.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
title: NYJC Computing Student Use License (NYJC-CSUL)
3+
permalink: "/LICENSE"
4+
layout: page
5+
style: assets/custom.css
6+
---
7+
8+
[Full license available at nyjc-computing.github.io/LICENSE](https://nyjc-computing.github.io/LICENSE)
9+
10+
---
11+
12+
## 1. License Grant
13+
NYJC Computing grants a **non-exclusive, non-transferable, limited-use license** to **current and former NYJC Computing students** to:
14+
- Access, download, annotate, and integrate the Materials into personal study systems for **personal academic use only**.
15+
- Share the Materials **non-commercially** with peers under the conditions below.
16+
17+
## 2. Redistribution and Citation
18+
Redistribution of the Materials to others (including juniors, classmates, or external parties) is **permitted only if ALL of the following conditions are met**:
19+
- The **full license text is included** unchanged with the shared Materials.
20+
- The Materials are shared **in their original, unmodified form** (no edits, cropping, reformatting, remixing, or excerpting).
21+
- The source **“NYJC Computing” is clearly cited** wherever the Materials are shared or displayed.
22+
23+
## 3. Prohibited Uses
24+
Users must NOT:
25+
- Sell, license, or commercially exploit the Materials or any derivative works.
26+
- Modify or remix the Materials for redistribution.
27+
- Share Materials with individuals who are not current or former NYJC Computing students without adhering to Section 2.
28+
- Remove or alter any copyright or license notices.
29+
30+
## 4. Ownership
31+
All Materials remain the intellectual property of their respective creators and NYJC Computing. This license **does not transfer ownership or intellectual property rights**.
32+
33+
## 5. Duration and Termination
34+
This license is valid while you are a current or former NYJC Computing student. Breach of any term may result in access revocation or disciplinary action.
35+
36+
## 6. Compliance
37+
Users must adhere to NYJC’s academic integrity policies. Misuse or unauthorized redistribution may lead to sanctions.

pages/free-resources.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@ style: assets/custom.css
77

88
These resources are created by us as part of our teaching content, and may be used for non-commercial purposes. If you do use them as-is with minor changes, please credit us with a link to the respective repositories so users can find the original source.
99

10+
## 2026 UAS Calculator
11+
12+
Can't figure out what UAS you will get? Trying to optimise your study strategy? Let our UAS Calculator help you out!
13+
14+
[2026 UAS Calculator](/2026-uas-calculator)
15+
1016
## Intro to Python
1117

1218
These exercises for Python beginners are part of a guided lesson package for H2 Computing students, with a greater focus on picking up Python features quickly.

0 commit comments

Comments
 (0)