Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
941 commits
Select commit Hold shift + click to select a range
26c9236
Disable phase scale as it's not needed right now
wardsimon Aug 24, 2021
b911c24
Avoid duplication of model recalculation at certain points.
rozyczko Aug 24, 2021
c9b3538
Update structure view on project loaded
AndrewSazonov Aug 24, 2021
9b9718d
Update PbSO4 example
AndrewSazonov Aug 24, 2021
b9f516d
Extend description of the PbSO4 example
AndrewSazonov Aug 24, 2021
795e768
Update Co2SiO4 example
AndrewSazonov Aug 25, 2021
8c8f367
Update Dy3Al5O12 example
AndrewSazonov Aug 25, 2021
dabe6a3
Add CeCuAl3 TOF example
AndrewSazonov Aug 25, 2021
2a5714a
Add Na2Ca3Al2F14 TOF example
AndrewSazonov Aug 25, 2021
96b00a1
Update short description of the project examples
AndrewSazonov Aug 25, 2021
65c8c08
Fix iconified names to follow new API
AndrewSazonov Aug 25, 2021
89aca1b
Structure viewer should be updated on phase change
rozyczko Aug 26, 2021
14b5005
Merge branch 'TOF' of github.com:easyScience/easyDiffractionApp into TOF
rozyczko Aug 26, 2021
01df6ea
Fixed typo with parameter name translation
rozyczko Aug 26, 2021
bb587be
Fix vertical spacing in the 'Fitting constraints' group
AndrewSazonov Aug 26, 2021
da92b74
enforce the state change on save
rozyczko Aug 26, 2021
578d63a
Merge branch 'TOF' of github.com:easyScience/easyDiffractionApp into TOF
rozyczko Aug 26, 2021
234120d
Fix `Error` column width on the `Analysis` page
AndrewSazonov Aug 26, 2021
7f3790c
Disable second `scale` parameter for Na2Ca3Al2F14 example
AndrewSazonov Aug 26, 2021
8ec0e42
Added parametersChanged to the main proxy to facilitate connections from
rozyczko Aug 26, 2021
147da4a
Merge branch 'TOF' of github.com:easyScience/easyDiffractionApp into TOF
rozyczko Aug 26, 2021
f626ed0
Errors set to zero on fitting finished
wardsimon Aug 26, 2021
d33a731
Call reset errors before fit finished emitted; refactoring
AndrewSazonov Aug 26, 2021
289b439
Load proper experiment groups on project loaded
AndrewSazonov Aug 26, 2021
d5722dd
Disable all `instrument and exp type` elements on exp data loaded
AndrewSazonov Aug 26, 2021
7000d49
Fixed signalling for direct cif edit events.
rozyczko Aug 27, 2021
fecbdf3
Disable individual cells instead of the whole table during fitting
AndrewSazonov Aug 27, 2021
37c64ba
Disable slider on analysis page during fitting
AndrewSazonov Aug 27, 2021
9131cda
Keep 'Start fitting' button text during fitting
AndrewSazonov Aug 27, 2021
41ebb8d
Undo/redo macros for reset errors. Update undo/redo text
AndrewSazonov Aug 27, 2021
a1bf81e
update parameters on undo
rozyczko Aug 30, 2021
20c446b
Merge branch 'develop' into TOF
rozyczko Sep 8, 2021
5f158d5
Fix analysis chart height on summary report page
AndrewSazonov Sep 13, 2021
5cf7533
Disable Lorentzian coefficients
AndrewSazonov Sep 14, 2021
148c98c
Fix left margin on summary report page
AndrewSazonov Sep 14, 2021
c37bc03
Update all project examples
AndrewSazonov Sep 14, 2021
12707b7
Fix user tutorial 3
AndrewSazonov Sep 14, 2021
9e95d67
Try to show `action failure` on non-zero exit status
AndrewSazonov Sep 14, 2021
b1a9f35
Fix the formatting of the licence name in config.xml
AndrewSazonov Sep 14, 2021
ad80d6a
Fixed experiment removal on project reset.
rozyczko Sep 18, 2021
97b94ec
Explicitly and quickly remove background points on state reset.
rozyczko Sep 20, 2021
e9ca0f5
Remove the point only when there are points to be removed.
rozyczko Sep 20, 2021
87d0486
Remove constraints on state reset.
rozyczko Sep 20, 2021
35b23c9
Reinstantiate the fitter object after calculator change
rozyczko Sep 21, 2021
5f55b7f
Fix fitting
wardsimon Sep 23, 2021
4cbc739
Keep only least-squares minimization methods
AndrewSazonov Sep 24, 2021
ee5e796
Add missing points to the measured data
AndrewSazonov Sep 24, 2021
ce08768
Set least_squares as a default minimization method
AndrewSazonov Sep 24, 2021
7c990ea
Temporarily disable automatic code signing on Windows
rozyczko Sep 30, 2021
a3590da
Update readme with TOF, constraints, etc.
AndrewSazonov Sep 30, 2021
c2c8616
Update the release notes
AndrewSazonov Sep 30, 2021
1d40417
Update project config
AndrewSazonov Sep 30, 2021
1cc1dec
Install easyDiffractionLib from our custom PyPi server
AndrewSazonov Oct 4, 2021
5c2112b
Rename package to easyDiffractionApp
AndrewSazonov Oct 4, 2021
cd519b1
Fix app name
AndrewSazonov Oct 4, 2021
5cac781
Fix app name in build script
AndrewSazonov Oct 4, 2021
28b816a
Fix date
AndrewSazonov Oct 4, 2021
611275e
Fix app name
AndrewSazonov Oct 4, 2021
a032838
Update changelog
AndrewSazonov Oct 4, 2021
98f9ef2
Cross platform date without leading 0
AndrewSazonov Oct 4, 2021
7523a7e
Fix app name in build script
AndrewSazonov Oct 4, 2021
404fa70
Online installer for `master`or `hot_fixes`branches only
AndrewSazonov Oct 5, 2021
491d52a
Update readme
AndrewSazonov Oct 5, 2021
21a11fe
Install toml before calling utils.py
AndrewSazonov Oct 5, 2021
f1be294
Install pip package
AndrewSazonov Oct 5, 2021
882962f
PyInstaller can't find pip? Import pip inside extraDict()...
AndrewSazonov Oct 5, 2021
4e170db
Manually add pip and toml to pyinstaller
AndrewSazonov Oct 5, 2021
b2c1234
Try pyinstaller 4.5.1 instead of 5.0.dev
AndrewSazonov Oct 5, 2021
fcbd16e
Auto generate date for installer
AndrewSazonov Oct 5, 2021
1c2da48
Merge branch 'master' into develop
rozyczko Oct 5, 2021
7a900eb
Fixed typo
rozyczko Oct 5, 2021
5715839
Distinguish between master and non-master branches for GitHub releases
AndrewSazonov Oct 5, 2021
3688586
Update RELEASE.md [ci skip]
wardsimon Oct 5, 2021
63d3de2
Update build.yml
AndrewSazonov Oct 5, 2021
a466de2
Minor fixes to the 0.8.2 release for issues found during release
rozyczko Oct 8, 2021
b5446a7
Remove duplicates [ci skip]
AndrewSazonov Oct 11, 2021
d125d37
Merge branch 'master' into develop
rozyczko Oct 12, 2021
04135bc
Merge branch 'develop' into fixes_0.8.2
rozyczko Oct 12, 2021
09eb338
Fixed project save.
rozyczko Oct 21, 2021
c80196e
Explicitly copy GSASII.libs and CFML.libs on Windows. #149
rozyczko Oct 22, 2021
03eb2a0
getsitepackages() weirdness
rozyczko Oct 22, 2021
73004d0
Develop branch updated with necessary fixes
rozyczko Nov 17, 2021
1d4585d
enabled tutorials on windows
rozyczko Nov 17, 2021
996531f
Initial tests - added convenience method to get the components from
rozyczko Nov 18, 2021
d1d933a
updated the lib branch
rozyczko Nov 18, 2021
abab68e
More proper implementation with separate 3rd grey line for current
rozyczko Nov 19, 2021
3d2b695
Point to the right branch of easyApp
rozyczko Nov 19, 2021
fd20bca
check if get-DisplayResolution is working
rozyczko Nov 23, 2021
ff4ba42
Allow multiple phase adds and modified button caption accordingly.
rozyczko Nov 23, 2021
6f450bc
Add return code to copyFile() for debugging purposes
rozyczko Nov 23, 2021
ebfed98
Try pyinstaller 4.5.1 instead of 4.7
AndrewSazonov Nov 23, 2021
c58fcb0
Try pyinstaller 4.6 instead of 4.7
AndrewSazonov Nov 23, 2021
40c6e00
Fix pyinstaller to be 4.5.1 as 4.6-4.7 failed on Ubuntu
AndrewSazonov Nov 23, 2021
d515296
Use python 3.8 instead of 3.7
AndrewSazonov Nov 23, 2021
591df9e
Refactor addedData()
AndrewSazonov Nov 23, 2021
0888e6b
Add code signing on macOS. Remove on Windows
AndrewSazonov Nov 23, 2021
d0da8b6
Run all steps in sign macos
AndrewSazonov Nov 23, 2021
9fd4d35
Fix identity variable
AndrewSazonov Nov 23, 2021
9254c38
Add 'verify app signatures' step
AndrewSazonov Nov 23, 2021
859c194
Update release notes
AndrewSazonov Nov 23, 2021
6dc7181
Add notarization and stapling steps
AndrewSazonov Nov 26, 2021
6a0d303
DOn't trust the calculator to contain anything
rozyczko Nov 26, 2021
1fcf9d7
Split sign app command into multiple lines
AndrewSazonov Nov 26, 2021
a0087da
Fix App Store notarization variables
AndrewSazonov Nov 26, 2021
9c67af7
Use same names for app and zip in notarization
AndrewSazonov Nov 26, 2021
80d43a7
Delete submitted zip of notarized app installer
AndrewSazonov Nov 26, 2021
fffa6f3
Fix zipped installer path in notarize step
AndrewSazonov Nov 26, 2021
5e08161
Removing a phase triggers unwanted index update on clicked row. Guard
rozyczko Nov 26, 2021
9169428
Handle lag on Apple server before stapling
AndrewSazonov Nov 26, 2021
f7199d2
Increase delay after notarization to 2 minutes
AndrewSazonov Nov 26, 2021
68c5291
Enable code signing for master branch only
AndrewSazonov Nov 26, 2021
c00137f
Remove copying maintenancetool on Windows
AndrewSazonov Nov 26, 2021
cde05aa
Fix phase scaling issues
wardsimon Nov 29, 2021
4e9a978
Enable multi-phase change
wardsimon Nov 29, 2021
98be549
Fix scale in examples
wardsimon Nov 29, 2021
fb32a64
Add multiphase example: Si3N4
AndrewSazonov Dec 2, 2021
5cafc16
Display all phases on the analysis chart
AndrewSazonov Dec 7, 2021
fabe014
Update multi-phase example
AndrewSazonov Dec 8, 2021
0cf461c
Add support for the multiple HKL sets
AndrewSazonov Dec 8, 2021
2952ca9
Enable tutorial creation for Windows (#181)
rozyczko Dec 13, 2021
939e6d3
Don't calculate the profile twice on project load. That's a bit silly.
rozyczko Dec 15, 2021
6300af7
State reset removes all the phases now. #189
rozyczko Jan 10, 2022
0152fc7
slight performance improvement for project loads.
rozyczko Jan 11, 2022
17a6a38
Avoid profile calculation on project reset. This was a "byproduct" of
rozyczko Jan 11, 2022
6730107
Assign interface before phases are added. This avoids recalculation of
rozyczko Jan 14, 2022
27b1f48
Merge atom_symbol_case, solving #184
rozyczko Jan 17, 2022
e428c59
Fix for getting HKL's
wardsimon Jan 19, 2022
9e1bfe1
Use easyCrystallography
wardsimon Jan 19, 2022
80175be
Update branch name.
rozyczko Jan 20, 2022
b81f6cf
Merge remote-tracking branch 'origin/easyCrystallography' into releas…
rozyczko Jan 20, 2022
35e659d
Fixed the multiphase example project.
rozyczko Jan 21, 2022
7cc905b
Add the missing crystallography content
rozyczko Jan 21, 2022
feb98ac
Merge remote-tracking branch 'origin/windows_calculators' into releas…
rozyczko Jan 21, 2022
f8786d8
CHange module name after refactoring in core
rozyczko Jan 24, 2022
c075877
Fix the scipy interpolation errors for backgrounds
rozyczko Jan 24, 2022
70bce38
The data recalculation is required for undo/redo.
rozyczko Jan 24, 2022
3bdbee9
Merge branch 'release-0.8.3' of https://github.com/easyScience/easyDi…
rozyczko Jan 24, 2022
031e748
Added Si3N4 multiphase project example
rozyczko Jan 27, 2022
d266b0c
Merge branch 'develop' into release-0.8.3
rozyczko Feb 1, 2022
2387e05
multiphase -> develop dependency for the lib
rozyczko Feb 1, 2022
54382c4
Updated copyright year
rozyczko Feb 2, 2022
61dc0e6
Take 'develop' branch of the library - testing
rozyczko Feb 3, 2022
73a0c9e
Switch to master branches for App and Lib
rozyczko Feb 6, 2022
c9d67c7
Merge branch 'master' into develop
rozyczko Feb 9, 2022
5f789f5
Update build-in examples
AndrewSazonov Feb 9, 2022
1824f5f
Update repo examples
AndrewSazonov Feb 9, 2022
d7c9482
Increase number of visible rows in examples
AndrewSazonov Feb 9, 2022
f801211
Merge pull request #192 from easyScience/build-in_examples
rozyczko Feb 11, 2022
9145a44
Merge branch 'develop' into macos_sign
rozyczko Mar 4, 2022
5eb8f26
Test signing
rozyczko Mar 4, 2022
337b89d
Back to signing on master branch only
rozyczko Mar 4, 2022
77701c2
Merge branch 'master' into develop
rozyczko Jul 28, 2022
fab9b05
try macos-11 (#215)
rozyczko Jul 29, 2022
51f891f
add visual studio redistributable to the windows installer (#217)
rozyczko Jul 29, 2022
5f5bb12
Vc fix (#218)
rozyczko Jul 30, 2022
e986a19
This fixes a bug where loaded example project would not show phase
rozyczko Aug 3, 2022
e8f0d78
Peak asymmetries from CrysPy (#223)
AndrewSazonov Sep 1, 2022
937b14b
Logic cleanup (#225)
rozyczko Sep 6, 2022
6ddc5c2
Logic state now has a flag telling the profile updater whether it should
rozyczko Sep 6, 2022
6439c83
Removed multiple profile updates for parameter change.
rozyczko Sep 6, 2022
9c360a4
Uninstaller shortcut. (#228)
rozyczko Oct 4, 2022
9dbcbab
Initial commit for the app working on
rozyczko Nov 11, 2022
855a7de
Update toml with correct branch of Lib
rozyczko Nov 15, 2022
9bde849
Wrap lists in a dict to work around a bug in current xml converter
rozyczko Nov 15, 2022
1fc848a
Remaining dicttoxml -> XMLSerializer cleanup.
rozyczko Nov 15, 2022
3c01163
Merge pull request #227 from easyScience/single_profile_update
rozyczko Nov 17, 2022
66d15fe
More fixes for xml access path.
rozyczko Nov 21, 2022
6c7ada9
rely on io_serialize in easyApp
rozyczko Nov 23, 2022
2a4eef1
XML structure slightly changed for the id field
rozyczko Nov 30, 2022
7b6c06c
Updates to xml data items after fix in core
rozyczko Dec 1, 2022
bfc229b
Repeat dependency on lazy-import.
rozyczko Dec 3, 2022
fb3aa72
removed dependency on lazy-import
rozyczko Dec 3, 2022
34bcc17
disable test installation so the installer is generated for local
rozyczko Dec 4, 2022
b02356a
Try to lock scipy version
rozyczko Dec 4, 2022
241e59c
Enable test mode run
rozyczko Dec 4, 2022
e873e1d
fixed typos
rozyczko Dec 4, 2022
af1ba3d
Avoid bg update on no bg defined
rozyczko Dec 14, 2022
cee86b1
goodness_of_fit is no longer defined on the results object
rozyczko Jan 6, 2023
4416745
Merge branch 'io_serialization' of https://github.com/easyScience/eas…
rozyczko Jan 6, 2023
9093440
Delayed reporting - added button to generate html/charts on the repor…
rozyczko Jan 11, 2023
66fe835
add no-binary pyobjc installation
rozyczko Jan 12, 2023
9925f9f
Set proper package name
AndrewSazonov Jan 12, 2023
4ba158d
Bump some packages
AndrewSazonov Jan 12, 2023
b81b1df
Try with the latest version of PyInstaller 5.7.0
AndrewSazonov Jan 12, 2023
aa1ef16
Go back to 7.0.1?
rozyczko Jan 12, 2023
c55809f
Remove poetry from build script
AndrewSazonov Jan 12, 2023
5e74cb7
Try to include missing modules to main.py
AndrewSazonov Jan 13, 2023
5b26431
very initial version. Here be dragons
rozyczko Jan 17, 2023
46b530e
Make the pyproject.toml look pretty
wardsimon Jan 18, 2023
e9f23d7
yarray is an xarray -> convert for plotting.
rozyczko Jan 18, 2023
1092121
fixes for serialization of the job object
rozyczko Jan 23, 2023
5864f6c
Create snapcraft image
wardsimon Jan 23, 2023
7592ab9
Fixes
wardsimon Jan 23, 2023
4d7e4b9
Create snapcraft.yml
wardsimon Jan 24, 2023
69a6989
Update main.py
wardsimon Jan 24, 2023
f7d5aa3
fix startup
wardsimon Jan 24, 2023
2764d57
Fix env vars
wardsimon Jan 25, 2023
3093ea6
Merge pull request #239 from easyScience/snapcraft
wardsimon Jan 25, 2023
5d14067
Update snapcraft.yaml
wardsimon Jan 25, 2023
61dad1d
Fix for undo/redo
rozyczko Jan 27, 2023
5071138
added fixes for polarized, ToF and multiphase
rozyczko Jan 30, 2023
2c72459
Use library-based exp cif reader and redo job properly
rozyczko Jan 31, 2023
071988b
Improve handling of reset, ToF and xyz loads for subsequent jobs
rozyczko Feb 1, 2023
b6ba4e0
Updated Examples 1-5
rozyczko Feb 1, 2023
85f9097
Updated examples 6-8
rozyczko Feb 2, 2023
4934dd1
Update examples in standalone examples directory
rozyczko Feb 2, 2023
008e068
Update snapcraft
wardsimon Feb 2, 2023
239627f
Merge remote-tracking branch 'origin/pip_install' into pip_install
wardsimon Feb 2, 2023
e0617ac
Update snapcraft.yml
wardsimon Feb 3, 2023
50b48cb
Add snap verseion
wardsimon Feb 3, 2023
10bb59b
Update examples with proper names and readonly status.
rozyczko Feb 3, 2023
2c2d429
Updated example files with correct strings.
rozyczko Feb 6, 2023
e93eeb6
Don't write empty experiment on project save
rozyczko Feb 8, 2023
0b5c7c4
Update snapcraft.yml
wardsimon Feb 9, 2023
acfb18f
Merge pull request #240 from easyScience/pip_install
rozyczko Feb 9, 2023
49f800e
Added the LaBaCoO3 example
rozyczko Feb 10, 2023
d007417
Merge branch 'develop' into release-0.8.5
rozyczko Feb 10, 2023
cd71cf2
remove merge artifact
rozyczko Feb 10, 2023
3c448e1
remove merge snafu
rozyczko Feb 10, 2023
83de1bf
Another merge typo fixed
rozyczko Feb 10, 2023
80c09ef
Merge branch 'job_based' into release-0.8.5
rozyczko Feb 15, 2023
7debbf9
modified new atom creation.
rozyczko Feb 16, 2023
7a465f7
Update toml with pdffit dependency and EDL release branch
rozyczko Feb 20, 2023
10633e3
msp values are already passed through chi_xx arguments
rozyczko Feb 20, 2023
a6a9ac1
Nope. we don't need pdffit in the app yet.
rozyczko Feb 21, 2023
285c0b9
Update premade examples for CrysPyV2 -> CrysPy
rozyczko Feb 27, 2023
c68c77c
More fixes for issues found by AS
rozyczko Mar 1, 2023
74110a8
update interface on calculator change
rozyczko Mar 13, 2023
769754d
Bumped version
rozyczko Mar 21, 2023
b099df7
Updated copyright to 2023
rozyczko Mar 21, 2023
5671f24
try forked build
rozyczko Mar 22, 2023
693258f
Revert "try forked build" as it was meant for the forked repo
rozyczko Mar 22, 2023
2047cdc
Workaround for GH runtime test failure
rozyczko Mar 23, 2023
98e6f00
Merge branch 'release-0.8.5' into copyright-dates-update
rozyczko Mar 23, 2023
792c3c1
Merge pull request #245 from easyScience/copyright-dates-update
rozyczko Mar 23, 2023
f0a0198
Update changelog and release info
AndrewSazonov Mar 28, 2023
614c5da
test with released EDL before merging
rozyczko Mar 28, 2023
0e40491
Merge branch 'release-0.8.5' of https://github.com/easyScience/easyDi…
rozyczko Mar 28, 2023
d2534ae
Merge pull request #246 from easyScience/release-0.8.5
rozyczko Mar 28, 2023
3ce4e80
Merge branch 'master' into develop
rozyczko Mar 29, 2023
081cd58
Remove dependencies defined in other packages
AndrewSazonov Mar 29, 2023
52389bb
Temporary fix of `from_cif` in parameter name
AndrewSazonov Mar 29, 2023
e19028b
Remove GSAS from dependencies
AndrewSazonov Mar 29, 2023
c437593
Remove GSAS-II and update project info
AndrewSazonov Mar 29, 2023
39d6f03
update the status bar info
rozyczko Mar 29, 2023
e9762cd
Fix data explorer display
AndrewSazonov Mar 30, 2023
bec22d4
Fix `fitting in progress` label
AndrewSazonov Mar 30, 2023
0cf4c9d
Remove temp files
AndrewSazonov Mar 30, 2023
9dfede5
Merge branch 'small_fixes' into develop
AndrewSazonov Mar 30, 2023
0c2cd9e
Temporary fix of build-in fitting tutorial
AndrewSazonov Mar 30, 2023
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
62 changes: 41 additions & 21 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:

strategy:
matrix:
os: [macos-10.15, ubuntu-20.04, windows-2019]
os: [macos-11, ubuntu-20.04, windows-2019]

steps:
- name: Cancel previous workflow runs
Expand All @@ -21,12 +21,13 @@ jobs:
- name: Check-out repository
uses: actions/checkout@v2

- name: Set up non-Python dependences (Linux)
- name: Set up non-Python dependencies (Linux)
if: runner.os == 'Linux'
run: |
sudo apt-get -o Acquire::Retries=3 update
sudo apt-get -o Acquire::Retries=3 install libxcb-xinerama0
sudo apt-get -o Acquire::Retries=3 install libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xfixes0
sudo apt-get -o Acquire::Retries=3 install libxcb-shape0
sudo apt-get -o Acquire::Retries=3 install libpulse-mainloop-glib0
# sudo apt-get install libgfortran4
# echo "QT_DEBUG_PLUGINS=1" >> $GITHUB_ENV
Expand Down Expand Up @@ -54,6 +55,12 @@ jobs:
python -m pip install toml
python utils.py --update

- name: Compile and install pyobjc on macos-11
if: runner.os == 'macOS'
run: |
python -m pip install pyobjc-core --no-binary :all:
python -m pip install pyobjc-framework-Cocoa --no-binary :all:

# https://docs.github.com/en/actions/reference/environment-variables
- name: Declare env variables on push and pull_request
shell: bash
Expand All @@ -79,21 +86,14 @@ jobs:
${{ env.PYTHON_PACKAGES_PATH }}
key: ${{ matrix.os }}-${{ hashFiles('pyproject.toml') }}

- name: Set up Python packages manager
uses: Gr1N/setup-poetry@v7

- name: Create venv and install Python dependences
run: poetry install
- name: Install Python dependences
run: pip install '.[ci]' --extra-index-url https://easyscience.github.io/pypi

- name: Create freezed python app bundle
run: poetry run python ${{ env.SCRIPTS_PATH }}/FreezeApp.py
run: python ${{ env.SCRIPTS_PATH }}/FreezeApp.py

- name: Create offline and online app installers from freezed app bundle
run: poetry run python ${{ env.SCRIPTS_PATH }}/MakeInstaller.py ${{ secrets.BINARY_SIGN_WIN }} ${{ secrets.CERT_ZIP_PASS }}

- name: Sign the installer
if: False # temporarily disabled until EC signing is automated
run: poetry run python ${{ env.SCRIPTS_PATH }}/Signatures.py ${{ secrets.BINARY_SIGN_WIN }} ${{ secrets.CERT_ZIP_PASS }}
run: python ${{ env.SCRIPTS_PATH }}/MakeInstaller.py

- name: Set up screen recording dependencies (macOS)
if: runner.os == 'macOS'
Expand All @@ -119,16 +119,33 @@ jobs:
run: mkdir -p ~/.local/share/applications/

- name: Install app
run: poetry run python ${{ env.SCRIPTS_PATH }}/InstallApp.py
run: python ${{ env.SCRIPTS_PATH }}/InstallApp.py

- name: Run app in testmode, record screen and quit
run: poetry run python ${{ env.SCRIPTS_PATH }}/RunApp.py --testmode
if: runner.os != 'Windows'
run: python ${{ env.SCRIPTS_PATH }}/RunApp.py --testmode

- name: Create bogus tutorial file on Windows
if: runner.os == 'Windows'
run: echo "Not working currently" > tutorial.mp4

- name: Rename test videos
run: poetry run python ${{ env.SCRIPTS_PATH }}/CreateTestVideos.py ${{ env.BRANCH_NAME }}
run: >
python ${{ env.SCRIPTS_PATH }}/RenameTestVideos.py
${{ env.BRANCH_NAME }}

- name: Sign app installer
if: github.event_name == 'push' && env.BRANCH_NAME == 'master'
run: >
python ${{ env.SCRIPTS_PATH }}/SignAppInstaller.py
${{ env.BRANCH_NAME }}
${{ secrets.MACOS_CERTIFICATE_ENCODED }} ${{ secrets.MACOS_CERTIFICATE_PASSWORD }}
${{ secrets.APPSTORE_NOTARIZATION_USERNAME }} ${{ secrets.APPSTORE_NOTARIZATION_PASSWORD }}

- name: Create zip archive of offline app installer
run: poetry run python ${{ env.SCRIPTS_PATH }}/ZipArtifacts.py ${{ env.BRANCH_NAME }}
- name: Create zip archive of offline app installer for distribution
run: >
python ${{ env.SCRIPTS_PATH }}/ZipAppInstaller.py
${{ env.BRANCH_NAME }}

- name: Upload zipped offline app installer to GitHub releases (non-master branch)
if: github.event_name == 'push' && env.BRANCH_NAME != 'master'
Expand All @@ -139,7 +156,7 @@ jobs:
allowUpdates: true
replacesArtifacts: true
token: ${{ secrets.GITHUB_TOKEN }}
artifacts: "${{ env.DISTRIBUTION_PATH }}/${{ env.APP_NAME }}_*.zip,${{ env.DISTRIBUTION_PATH }}/tutorial_*.mp4"
artifacts: "${{ env.DISTRIBUTION_PATH }}/*.zip,${{ env.DISTRIBUTION_PATH }}/*.mp4"
tag: ${{ env.BRANCH_NAME }}
name: ${{ env.BRANCH_NAME }}
bodyFile: "RELEASE.md"
Expand All @@ -153,11 +170,14 @@ jobs:
allowUpdates: true
replacesArtifacts: true
token: ${{ secrets.GITHUB_TOKEN }}
artifacts: "${{ env.DISTRIBUTION_PATH }}/${{ env.APP_NAME }}_*.zip"
artifacts: "${{ env.DISTRIBUTION_PATH }}/*.zip"
tag: ${{ env.RELEASE_TAG }}
name: ${{ env.RELEASE_TITLE }}
bodyFile: "RELEASE.md"

- name: Upload online app installer to repository via FTP
if: github.event_name == 'push'
run: poetry run python ${{ env.SCRIPTS_PATH }}/UploadToFtp.py ${{ env.BRANCH_NAME }} ${{ secrets.APP_REPO_FTP_PASSWORD }}
run: >
python ${{ env.SCRIPTS_PATH }}/UploadToFtp.py
${{ env.BRANCH_NAME }}
${{ secrets.APP_REPO_FTP_PASSWORD }}
75 changes: 75 additions & 0 deletions .github/workflows/snapcraft.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
name: Build Snap Image

on: [push, pull_request]

jobs:
build_snap:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: snapcore/action-build@v1
id: snapcraft
- uses: actions/upload-artifact@v3
with:
name: snap
path: ${{ steps.snapcraft.outputs.snap }}

install_test:
runs-on: ubuntu-latest
needs: build_snap
steps:
- uses: actions/download-artifact@v3
with:
name: snap
path: .
- name: Install snap
run: |
sudo snap install --dangerous *.snap
- name: Set up screen dependencies (Linux)
run: |
sudo apt-get -o Acquire::Retries=3 update
sudo apt-get -o Acquire::Retries=3 install libxcb-xinerama0
sudo apt-get -o Acquire::Retries=3 install libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xfixes0
sudo apt-get -o Acquire::Retries=3 install libpulse-mainloop-glib0
sudo apt-get -o Acquire::Retries=3 install libxkbcommon-x11-0
Xvfb :0 -screen 0 1920x1080x24 -ac &
echo "DISPLAY=:0" >> $GITHUB_ENV
- name: Run snap
run: |
snap run easydiffraction &
sleep 60

upload_snap:
runs-on: ubuntu-latest
needs: install_test
steps:
- uses: actions/download-artifact@v3
with:
name: snap
path: .

- name: Get branch names
id: branch-name
uses: tj-actions/branch-names@v6

- name: Get snap filename
run: |
echo "SNAP_FILENAME=$(ls *.snap)" >> $GITHUB_ENV

- name: Publish Develop Branch to snapcraft beta
if: steps.branch-name.outputs.current_branch == 'develop'
uses: snapcore/action-publish@v1
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.STORE_LOGIN }}
with:
snap: ${{ env.SNAP_FILENAME }}
release: beta

- name: Publish Main Branch to snapcraft stable
if: steps.branch-name.outputs.current_branch == 'main'
uses: snapcore/action-publish@v1
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.STORE_LOGIN }}
with:
snap: ${{ env.SNAP_FILENAME }}
release: stable
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -47,3 +47,6 @@ temp.prm
settings.ini*
.ci/
.idea/

#Snap
*.snap
33 changes: 33 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,36 @@
# Version 0.8.5-beta (29 Mar 2023)

### Changes

- GSAS-II calculation engine has been removed.
- Overall application performance has been significantly improved.

### Bug Fixes

- Summary report export widget is now properly enabled for custom projects.
- Undo/redo functionality has been fixed.

# Version 0.8.4-beta (28 Jul 2022)

### New Features

- Simulating and fitting polarised data using the [CrysPy](https://github.com/ikibalin/cryspy) calculation engine.
- Reading CIF files with experimental data and instrumental parameters.

### Changes

- Default example with experimental phase has been modified.
- Added example projects with polarised data.
- Windows installer is now 64-bit.

### Bug Fixes

- CrysFML simulation now shows Bragg peaks.
- Inclusion of the space group setting in calculations.
- The `Project save` button is now disabled for read-only example projects.
- The `Reset state` functionality now resets calculator choice.
- Overall performance has been improved.

# Version 0.8.3-beta (27 Jan 2022)

### Features
Expand Down
5 changes: 0 additions & 5 deletions DEPENDENCIES.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ The following Open Source projects are used in easyDiffraction (if there are any

- [CrysPy](https://github.com/ikibalin/cryspy): [MIT License](https://raw.githubusercontent.com/ikibalin/cryspy/master/LICENSE)
- [CrysFML](https://code.ill.fr/scientific-software/crysfml): [GNU Lesser General Public License (LGPL)](https://raw.githubusercontent.com/easyScience/libsDarwin/main/libsDarwin/CFML_api/LICENSE)
- [GSAS-II](https://subversion.xray.aps.anl.gov/trac/pyGSAS): [License](https://raw.githubusercontent.com/easyScience/libsDarwin/main/libsDarwin/GSASII/license2013.txt)

## Visualization libraries

Expand All @@ -22,7 +21,3 @@ The following Open Source projects are used in easyDiffraction (if there are any
- [PT Sans](https://fonts.google.com/specimen/PT+Sans): [SIL Open Font Licence (OFL)](https://scripts.sil.org/OFL)
- [PT Mono](https://fonts.google.com/specimen/PT+Mono): [SIL Open Font Licence (OFL)](https://scripts.sil.org/OFL)
- [Font Awesome](https://github.com/FortAwesome/Font-Awesome): [SIL Open Font Licence (OFL)](https://scripts.sil.org/OFL)

## Notes

- GSAS-II: This product includes software produced by UChicago Argonne, LLC under Contract No. DE-AC02-06CH11357 with the Department of Energy.
2 changes: 1 addition & 1 deletion LICENSE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
BSD 3-Clause License

Copyright (c) 2021-2022, easyDiffraction contributors (https://github.com/easyScience/easyDiffraction).
Copyright (c) 2021-2023, easyDiffraction contributors (https://github.com/easyScience/easyDiffraction).

All rights reserved.

Expand Down
Loading