-
Notifications
You must be signed in to change notification settings - Fork 19
Update LingView
Occasionally, updates to the LingView software are published to GitHub. If you're downloading LingView for the first time, you automatically get the latest version. If you're already using LingView, you can update to the latest version using GitHub Actions, using a .zip file or with git.
LingView updates are issued to fix bugs, improve usability, and/or add features. Examples include the ability for you to publish LingView websites for free using GitHub, for LingView to process a wider range of documents without errors, or for visitors to search your corpus for specific words and morphemes. For a complete list of updates, see the Changelog.
This method is recommended if you already use GitHub Actions to automatically build your LingView website. It's similar to the git terminal method, but more user-friendly.
- Go to your GitHub repository's Actions tab.
- Click Prepare Upgrade in the left sidebar.
- Click the Run workflow dropdown on the right side of the page, then click the green Run workflow button.
- Refresh the page, and wait a minute or two while the workflow runs.
- When it's done, you'll see a green checkmark. If you see a red X instead, please tell [email protected] and then use a different method.
- Go to your GitHub repository's Pull requests tab.
- If there are any updates, you'll see a new pull request called Upgrade LingView Core. Click on it, then go to its Files changed tab.
- Resolve any merge conflicts (indicated by
<<<<<
or>>>>>
in a changed file) by making additional commits on themaster-upgrade
branch. If you don't see<<<<<
or>>>>>
, you don't have to do anything. - Go to the pull request's Conversations tab, scroll to the bottom, and click the green Merge button.
This method is not recommended if you've customized the LingView software by changing css
, jsx
, or preprocessing
files.
- Save a copy of your
data
directory, to avoid losing your data. If you have modified other files, such as by adding content to the About page (jsx/App/AboutPage.jsx
), save a copy of those too. You'll have to make those changes again at the end. - Delete your
LingView
directory. - Download LingView as a .zip file, using the green button on the main LingView page on GitHub.
- Extract the .zip file to the same location as your old (deleted)
LingView
directory, and rename it fromLingView-master
to simplyLingView
. - Run
npm install
in your terminal. - Replace the new
data
directory with your olddata
directory. Re-do any of your customizations to other files. - Build your LingView website as you normally would (e.g.
node preprocessing/rebuild.js
followed bynpm run webpack
). Ta-da!
- Start a merge from BrownCLPS/LingView by running the following commands in your terminal:
git remote add upstream "https://github.com/BrownCLPS/LingView.git"
# If you got "fatal: remote upstream already exists", ignore it and move on
git fetch upstream
git merge --no-commit --no-ff "upstream/master"
- Discard any changes to your
data
directory.
git reset -- data
git checkout -- data
- Resolve any merge conflicts. Look at the diff to make sure there are no unintended changes.
- Run
npm install
. You may skip this step if there are no changes to thepackage.json
file. - Build your LingView website as you normally would (e.g.
npm run quick-build
). - Commit your changes.
There is no automatic updater for LingView. If you want to be notified about major updates, email [email protected] indicating your preference. You can also visit this GitHub site periodically and check the history for updates.