Introduction

This page describes which libraries, present in this project's repository, should be upgraded, how, and when. If you think some of this guidelines should be changed, feel free to start discussion.

All libraries can be found in libs directory of this repository.

Important: As long as this repository is in active development, there are people how will keep all libraries up to date. This page serves more as a guidelines for whoever want's to fork or take over this project in the future.

Generally, it's preferred to have the development, uncompressed versions of libraries.

Note: When downloading new versions, include only those files that are already included.

CSSO

Upgrade when convenient. Test download page CSS minifications afterwards.

csso.web.js can be found on GitHub.

Current version is from 2013-11-19.

FileSaver.js

Upgrade when convinent. Test download page files saving capatilities afterwards.

FileSaver.js can be found on GitHub.

Current version is from 2014-05-27.

Foundation

Foundation 5 is used. Current version meets the needs of this project.

There are two versions of Foundation. One is for test pages and contain only basic styles and top bar styles, the other one is for other pages, and it's Foundation with all components.

When Foundation is upgraded, those two versions should be kept, unless Foundation will drop body { position: relative; } in future releases, in which case full version can probably be used on tests pages too.

Foundation can be found here.

jQuery and jQuery UI

Whenever a new stable version is released, either maintenance or major, it should be added to repository. Create new directory with name reflecting version number and add full production versions of jQuery or jQuery UI (and jQuery UI Sunny theme, and also a full list of datapicker translations). Refer to libs/jquery and libs/jquery-ui directories to see the exact files structure, and mimic it—otherwise, file will not be included correctly in tests.

After adding new files to subdirectory, replace files in main directory of either libs/jquery or libs/jquery-ui, so head version can be the newest (the one called in test when no version is specified).

When upgrading jQuery UI, change paths in libs/jui_theme_switch/official.json to match latest version.

Next, add new version to config/tests.json file, and change appropriate value of "head" key to match the latest version.

Do some tests and bugfixes.

Add new versions to installation page. Tag new version appropriately. Use "fam tick" class to tag supported version, "fam cross" to tag unsupported version of library, and "fam hourglass" to tag version for which decision on the matter is pending.

jui_theme_switch

Version 1.0.6 of jui_theme_switch is used, and it meets the needs of this project.

Moving to Super-Theme-Switcher can be considered, as it has nicer visuals.

Current version is from 2013-01-21.

Lorem Ipsum

This plugin is likely discontinued, but it meets the needs of this project.

Some bugfixes were made to original code.

Originally downloaded from here.

Current version is from 2008-04-29.

Prism

Prism is not strictly versioned. Current version meets the needs of this project.

Upgrade if major features were added to Prism since last upgrade. Download production versions of JavaScript and CSS, with Twilight theme and support for markup, CSS, C-like, JavaScript, and Bash. Check demos afterwards to make sure nothing's broken up.

Current version is from 2014-09-05.

QUnit, Qunit Composite, jQuery Simulate

QUnit 1.14.0 is used, and it meets the needs of this project. Dropping Qunit 1.15 into repository proved to generated some issues. Those can be investigated and resolved.

QUnit Composite v1.0.2pre is used, and it meets the needs of this project.

jQuery Simulate 0.0.1 is used, and it meets the needs of this project.

Some changes were made to original code of Qunit Composite and jQuery Simulate. When upgrading to newest versions, those changes should be reflected. Qunit Composite was detached at 7f3499ef35. jQuery Simulate was detached at 2b450a9931.

UglifyJS

UglifyJS 1.4.3 is used, and it meets the needs of this project.

Upgrade when convenient. Test download page JS minifications afterwards.

Node.js is required to build UglifyJS for this project. Here's how to do this:

# Install UglifyJS globally
npm install uglify-js -g

# Assuming you're in project's root directory,
# navigate to UglifyJS directory
cd libs/uglify-js

# Build UglifyJS in current directory
uglifyjs --self -cmo uglify-js.js

Zip.js

Unspecified version of Zip.js from 2013-04-04 is used, and it meets the needs of this project.

Zip.js can be found on GitHub.

Upgrade if major features were added to Zip.js since last upgrade. Test download page zipping functionality afterwards.

Current version is from 2013-04-04.