Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 18 additions & 10 deletions .github/workflows/sync-branches.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
branches: [dev, content] # Add new branches here
branches: [content] # Add new branches here
steps:
- name: Checkout Main Branch
uses: actions/checkout@v3
Expand All @@ -27,13 +27,21 @@ jobs:
- name: Sync with ${{ matrix.branch }}
run: |
TARGET_BRANCH="${{ matrix.branch }}"
git checkout $TARGET_BRANCH
git pull origin $TARGET_BRANCH || echo "No changes to pull for $TARGET_BRANCH"
git reset --hard origin/main
git merge --squash origin/main || echo "No changes to merge for $TARGET_BRANCH"
if [ -n "$(git status --porcelain)" ]; then
git commit -m "Squash merge changes from main into $TARGET_BRANCH"
git push origin $TARGET_BRANCH || echo "Failed to push $TARGET_BRANCH"
git fetch --all --prune
# Checkout the target branch and ensure it's up-to-date with origin
git checkout ${TARGET_BRANCH}
git pull --no-rebase origin ${TARGET_BRANCH} || true

# Merge origin/main into the target branch (automatic merge).
# Use --no-ff to create an explicit merge commit when required and
# --no-edit to avoid interactive editor for the merge message.
if git merge --no-ff --no-edit origin/main; then
git push origin ${TARGET_BRANCH}
else
# On merge conflict, abort and push a backup branch so nothing is lost.
git merge --abort || true
BACKUP_BRANCH="backup/${TARGET_BRANCH}-merge-failed-$(date +%s)"
git push origin HEAD:refs/heads/${BACKUP_BRANCH}
echo "Merge failed. Backup pushed to ${BACKUP_BRANCH}. Exiting with failure."
exit 1
fi
git reset --hard main
git push origin $TARGET_BRANCH --force || echo "Failed to force push $TARGET_BRANCH"
8 changes: 8 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
source "https://rubygems.org"

# Required from Ruby 3.4.0
gem "base64"
gem "bigdecimal"

# Required from Ruby 3.5.0
gem "logger"

# Hello! This is where you manage which Jekyll version is used to run.
# When you want to use a different version, change it below, save the
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
Expand Down
35 changes: 8 additions & 27 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,16 @@ GEM
specs:
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
base64 (0.3.0)
bigdecimal (3.3.1)
colorator (1.1.0)
concurrent-ruby (1.3.4)
csv (3.2.8)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
eventmachine (1.2.7)
ffi (1.17.0-x86_64-linux-gnu)
ffi (1.17.2-x86_64-linux-gnu)
forwardable-extended (2.6.0)
http_parser.rb (0.8.0)
i18n (1.14.6)
Expand Down Expand Up @@ -47,6 +49,7 @@ GEM
listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
logger (1.7.0)
mercenary (0.3.6)
monophase (0.1.0)
jekyll (~> 3.9)
Expand All @@ -71,42 +74,20 @@ GEM
webrick (1.9.0)

PLATFORMS
aarch64-linux
aarch64-linux-android
aarch64-linux-gnu
aarch64-linux-musl
aarch64-mingw-ucrt
arm-linux-androideabi
arm-linux-gnu
arm-linux-gnueabihf
arm-linux-musl
arm-linux-musleabihf
arm64-darwin
riscv64-linux-android
riscv64-linux-gnu
riscv64-linux-musl
ruby
x86-cygwin
x86-linux
x86-linux-android
x86-linux-gnu
x86-linux-musl
x86-mingw-ucrt
x86_64-cygwin
x86_64-darwin
x86_64-linux-android
x86_64-linux-gnu
x86_64-linux-musl

DEPENDENCIES
base64
bigdecimal
http_parser.rb (~> 0.6.0)
jekyll (~> 3.9)
jekyll-feed (~> 0.12)
logger
monophase
tzinfo (>= 1, < 3)
tzinfo-data
wdm (~> 0.1)
webrick (~> 1.9)

BUNDLED WITH
2.5.11
2.6.2
3 changes: 3 additions & 0 deletions _data/social.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,6 @@
- title: GitHub
url: https://github.com/nyjc-computing
icon: fab fa-github
- title: Reddit
url: https://www.reddit.com/u/Legitimate_Fact9099/s/Yn4u8KSPt5
icon: fab fa-reddit
37 changes: 37 additions & 0 deletions pages/LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
title: NYJC Computing Student Use License (NYJC-CSUL)
permalink: "/LICENSE"
layout: page
style: assets/custom.css
---

[Full license available at nyjc-computing.github.io/LICENSE](https://nyjc-computing.github.io/LICENSE)

---

## 1. License Grant
NYJC Computing grants a **non-exclusive, non-transferable, limited-use license** to **current and former NYJC Computing students** to:
- Access, download, annotate, and integrate the Materials into personal study systems for **personal academic use only**.
- Share the Materials **non-commercially** with peers under the conditions below.

## 2. Redistribution and Citation
Redistribution of the Materials to others (including juniors, classmates, or external parties) is **permitted only if ALL of the following conditions are met**:
- The **full license text is included** unchanged with the shared Materials.
- The Materials are shared **in their original, unmodified form** (no edits, cropping, reformatting, remixing, or excerpting).
- The source **“NYJC Computing” is clearly cited** wherever the Materials are shared or displayed.

## 3. Prohibited Uses
Users must NOT:
- Sell, license, or commercially exploit the Materials or any derivative works.
- Modify or remix the Materials for redistribution.
- Share Materials with individuals who are not current or former NYJC Computing students without adhering to Section 2.
- Remove or alter any copyright or license notices.

## 4. Ownership
All Materials remain the intellectual property of their respective creators and NYJC Computing. This license **does not transfer ownership or intellectual property rights**.

## 5. Duration and Termination
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.

## 6. Compliance
Users must adhere to NYJC’s academic integrity policies. Misuse or unauthorized redistribution may lead to sanctions.
6 changes: 6 additions & 0 deletions pages/free-resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ style: assets/custom.css

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.

## 2026 UAS Calculator

Can't figure out what UAS you will get? Trying to optimise your study strategy? Let our UAS Calculator help you out!

[2026 UAS Calculator](/2026-uas-calculator)

## Intro to Python

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.
Expand Down