Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use NPM for management of client side dependencies #942

Merged
merged 7 commits into from
Jun 15, 2017
Merged

Commits on Jun 9, 2017

  1. Remove jQuery UI

    jQuery UI is not actually used.
    jtojnar committed Jun 9, 2017
    Configuration menu
    Copy the full SHA
    1b10afc View commit details
    Browse the repository at this point in the history
  2. Use NPM for obtaining client side dependencies

    The JavaScript client depends on several libraries, which are currently
    tracked in our repository. This makes keeping up with updates unnecessarily
    complicated and pollutes the repository.
    
    In the past we faced the same problem with PHP dependencies and we solved it
    using Composer. For JavaScript, Bower and NPM are two most common package
    managers. Initially, Bower was used for its use of flat dependency tree
    but in the end NPM prevailed because it is much more common in distribution
    repositories.
    
    This patch modifies the build script to install the dependencies and moves
    jQuery dependency to the new system. Other dependencies have yet to come.
    
    As with Composer, nothing changes for normal user; developers will be forced
    to update the dependencies on checkout.
    jtojnar committed Jun 9, 2017
    Configuration menu
    Copy the full SHA
    4e4094c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    80918d2 View commit details
    Browse the repository at this point in the history
  4. Install more client side dependencies using NPM

    In addition to jQuery, we are now also installing the following packages:
    
    * malihu custom scrollbar plugin
    * jQuery Hotkeys
    * jQuery Mousewheel
    jtojnar committed Jun 9, 2017
    Configuration menu
    Copy the full SHA
    8946e49 View commit details
    Browse the repository at this point in the history
  5. Move the list of assets to client package manifest

    The list of assets is now used in both index.php and gruntfile.
    To make sharing the data easier it was moved to JSON file.
    jtojnar committed Jun 9, 2017
    Configuration menu
    Copy the full SHA
    b9b6a1b View commit details
    Browse the repository at this point in the history

Commits on Jun 15, 2017

  1. Upgrade FancyBox and install it using NPM

    FancyBox was the last of the third party JavaScript libraries. Since
    the official NPM package only offers the new major version, selfoss
    was also upgraded to use it. As a bonus, long standing issue with
    keyboard shortcuts was fixed.
    
    Closes: #796
    jtojnar committed Jun 15, 2017
    Configuration menu
    Copy the full SHA
    37311e5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5e56ae1 View commit details
    Browse the repository at this point in the history