Updating and Releasing the UFC - UVA-CAMA/NICUHDF5Viewer GitHub Wiki
This is for advanced users only! If you are just using our software, don't worry about this page. If you are in charge of releasing new versions of this software, this is for you!
Updating the UFC to Use a New fmtcnv
- Ryan Bobko makes new versions of the fmtcnv software and puts them in CAMA\PreVent\UVA\fmtcnv.
- Copy the newest fmtcnv version to CAMA\Amanda\fmtcnv_allversions for safekeeping and rename the folder to fmtcnv_vX.X.X.
- Paste this new folder (fmtcnv_vX.X.X) here as well: CAMA\Amanda\JavaProjects\UniversalFileConverterGUIv05
- I package up all my releases in Java Eclipse
- Open UFCMain.java and change the following:
- Update the UFC version number on line 101 here:
bwconv.write("Using Universal File Converter v1.4.0"); bwconv.newLine();
- Update the UFC version number on line 102 here:
bwconv.write("(UFC_v1.4.0)"); bwconv.newLine();
- Update the version number of fmtcnv on line 103 here:
bwconv.write("Using fmtcnv_v4.3.2"); bwconv.newLine();
- If the version of the Stp toolkit ever changes, update it on line 104 here:
bwconv.write("Using StpToolkit_8.4"); bwconv.newLine();
- If the version of the Stp toolkit ever changes, update it on line 268 as well:
String command1 = currentfile + "\\StpToolkit_8.4\\StpToolkit.exe \"" + myfilename + "\" " + monitoringsystem + deidentifyparam + " -o \"" + fullxmlfilepath + "\" -v" + savewaveformstoggle;
- Update the version number of fmtcnv on line 323 here:
String command2 = currentfile + "\\fmtcnv_v4.3.2\\formatconverter --to " + outputfiletype + " \"" + myfilename + "\" " + justonexml + " " + breakornobreak + savewaveformstogglefmtcnv + " --localtime --pattern \"" + destfoldernew + "\\%i_%s.%t\"";
- Update the UFC version number on line 101 here:
- Save the above changes
- Export the new jar file by doing the following:
- Go to File>Export
- Select the Java folder and then Runnable JAR file below that
- Hit next
- The Launch configuration should be "UFCRunner - UniversalFileConverterGUIv05" (mine shows up as UFCRunner (2) - UniversalFileConverterGUIv05)
- Set the export destination to be CAMA\Amanda\UFC_vX.X.X\UFC_vX.X.X.jar (make sure to update the UFC version appropriately in both places here!) (Note, you may need to specify your local path to the CAMA drive here. On my computer it is just X:)
- Choose "Package required libraries into generated JAR
- Do not select "Save as ANT script"
- Hit "Finish"
- Note, if the folder CAMA\Amanda\UFC_vX.X.X does not yet exist, it will warn you saying "The location: 'CAMA\Amanda\UFC_v1.5.0' for the JAR file does not exist. Would you like to create it?" - hit yes here
- Now go to your directory CAMA\Amanda\UFC_vX.X.X and paste the fmtcnv_vX.X.X folder in there (yes - keep the folder as fmtcnv_vX.X.X)
- Copy the following from a previous version of UFC and paste into your UFC_vX.X.X folder
- StpToolkit_8.4
- tmp (an empty folder that is necessary for fmtcnv to run)
- How to Use UFC_v1.0.x.png
- ConversionLogFiles (be sure to empty this folder out before packaging it up for release!!!)
- Update the .bat file from a previous version of UFC to work with the new UFC
- Edit the .bat file using notepad or notepad ++
- Change the single line of code in this .bat file to use your new UFC version number
- Rename the file to contain the new UFC version number
- The reason this .bat file exists is that some computer security systems don't let the users directly run the .jar file, so we created this batch file for them to run instead. Plus, when you use the .bat file, you can see the output scrolling by as you go, which is nice!
- Check your UFC_vX.X.X folder. It should contain the following:
- Folder: ConversionLogFiles (this should be empty)
- Folder: fmtcnv_vX.X.X (should contain 19 files)
- Folder: StpToolkit_8.4 (or a new version, if you have updated) (should contain 8 files)
- Folder: tmp (this should be empty)
- File: How to Use UFC_v1.0.x.png
- File: UFC_vX.X.X.bat
- File: UFC_vX.X.X.jar
- Zip up your UFC_vX.X.X folder and keep the zipped folder within CAMA/Amanda as well. This zipped folder is what you will send out.
Releasing the New UFC
-
Make sure to commit the newest changes to the GitHub repository.
-
Tag the github repository at this point with the UFC version number and write a detailed commit message explaining what changed.
git tag -a vX.X -m "Give a detailed commit message that has all the updates since the last release" git push origin vX.X
-
Create a release on github
- Pull up the tag you just created (go to the repository and click the list of tags)
- Create a release from the tag by clicking on the 3 dots to the right of the tag and hit "create a release"
- Provide the same detailed information that was provided in the commit message above. This should be a summary of all major changes since the last release (not just since the last commit)
- Click the button "Attach binaries by dropping them here or selecting them"
- Upload the zipped UFC_vX.X.X folder
- Hit "Publish Release"
-
Put the build number and fmtcnv information in the table here What UFC Version is this HDF5 File From
-
Update the page When to Reconvert for each of the file formats
-
Link to the release on the page Version Release Notes
-
Update the page Download the Newest Software