Skip to content

Commit a13553d

Browse files
committed
fixes CSV ranking report on macOS
1 parent 29e1782 commit a13553d

File tree

6 files changed

+22
-14
lines changed

6 files changed

+22
-14
lines changed

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ Version History
6262

6363
| Version | Date | Comment |
6464
|---------|------:|---------|
65+
| [v3.1.2](https://github.com/artisan-roaster-scope/artisan/releases/tag/v3.1.2) | Apr XX, 2025 | Adds event replay ramping, event dragging, [IMF machine control](https://artisan-scope.org/machines/imf/) setups, extended support for [Giesen machines](https://artisan-scope.org/machines/giesen/), fixes [Loring autoCHARGE/DROP](https://artisan-scope.org/machines/loring/), support for [Carmomaq's Stratto Lab sample roaster](https://artisan-scope.org/machines/carmomaq/), support for [Phidget motor controllers](https://artisan-scope.org/devices/phidgets/#45-dc-motor-control), support for energy meters, [ROEST CSV import](https://artisan-scope.org/machines/roest/), improved Cropster import, many small fixes and UI improvements |
6566
| [v3.1.0](https://github.com/artisan-roaster-scope/artisan/releases/tag/v3.1.0) | Nov&nbsp;22,&nbsp;2024 | Adds support for induction heated [Gemma machines by Sweet Coffee Italia](https://artisan-scope.org/machines/sci/), the latest [Santoker machines](https://artisan-scope.org/machines/santoker/) connecting via Bluetooth, [Primo roasting machines](https://artisan-scope.org/machines/primo/), [ColorTrack](https://artisan-scope.org/devices/colortrack/) sensors, [Stronghold](https://stronghold.coffee/) profile import, and [Phidget stepper controllers](https://artisan-scope.org/devices/phidgets/) and more.<br><b>Release Sponsor: [Algrano](https://algrano.com/artisan?utm_source=artisan_blog&utm_medium=referral&utm_campaign=algrano_x_artisan&utm_content=blog)</b><br/> |
6667
| [v3.0.2](https://github.com/artisan-roaster-scope/artisan/releases/tag/v3.0.2) | Aug&nbsp;20,&nbsp;2024 | Bug fixes |
6768
| [v3.0.0](https://github.com/artisan-roaster-scope/artisan/releases/tag/v3.0.0) | Aug&nbsp;1,&nbsp;2024 | Adds [roast scheduling](https://doc.artisan.plus/docs/schedule/) support<br><b>Release Sponsor: [artisan.plus](https://artisan.plus/)</b><br/> |

src/artisan.py

+3
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414
# which should not be significant
1515
os.environ['OMP_NUM_THREADS'] = '1'
1616

17+
# deactivate defusedexml in OPENPYXL as it might not be installed or bundled
18+
os.environ['OPENPYXL_DEFUSEDXML'] = 'False'
19+
1720
# highDPI support must be set before creating the Application instance
1821
try:
1922
# the following two lines seem not to be needed any longer with Qt6.1

src/artisanlib/main.py

+5-1
Original file line numberDiff line numberDiff line change
@@ -22095,6 +22095,7 @@ def rankingReport(self, pdf:bool = False) -> None:
2209522095
_, _, exc_tb = sys.exc_info()
2209622096
self.qmc.adderror((QApplication.translate('Error Message','Exception:') + ' rankingReport() {0}').format(str(e)),getattr(exc_tb, 'tb_lineno', '?'))
2209722097

22098+
2209822099
try:
2209922100
# Create a roast phase visualization graph
2210022101

@@ -22249,7 +22250,10 @@ def rankingReport(self, pdf:bool = False) -> None:
2224922250
if prev_backgroundpath:
2225022251
self.loadbackground(prev_backgroundpath)
2225122252
self.qmc.background = prev_background
22252-
self.qmc.timealign()
22253+
if prev_foreground_profile_path or prev_backgroundpath:
22254+
self.qmc.timealign()
22255+
else:
22256+
self.qmc.reset()
2225322257
except Exception as e: # pylint: disable=broad-except
2225422258
_log.exception(e)
2225522259

src/requirements-dev.txt

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
types-openpyxl>=3.1.5.20250306
22
types-Pillow>=10.2.0.20240822
33
types-protobuf>=5.29.1.20250315
4-
types-psutil>=7.0.0.20250218
4+
types-psutil>=7.0.0.20250401
55
types-pyserial>=3.5.0.20250326
66
types-python-dateutil==2.9.0.20241206
77
types-pytz>=2025.2.0.20250326
@@ -25,8 +25,8 @@ pytest-cov==6.0.0
2525
#pytest-bdd==6.1.1
2626
#pytest-benchmark==4.0.0
2727
#pytest-mock==3.11.1
28-
hypothesis>=6.130.5
29-
coverage>=7.7.1
28+
hypothesis>=6.130.6
29+
coverage>=7.8.0
3030
coverage-badge==1.1.2
3131
codespell==2.4.1
3232
# the following 2 packages are not installed along aiohttp on Python3.12 and make mypy complain

src/requirements.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -67,13 +67,13 @@ matplotlib==3.7.3; python_version < '3.9' # last Python 3.8 release
6767
matplotlib==3.10.0; python_version >= '3.9'
6868
jinja2==3.1.5
6969
aiohttp==3.10.11; python_version < '3.9' # last Python 3.8 release
70-
aiohttp==3.11.14; python_version >= '3.9'
70+
aiohttp==3.11.15; python_version >= '3.9'
7171
aiohttp_jinja2==1.6
7272
python-bidi==0.4.2; python_version < '3.9' # last Python 3.8 release
7373
python-bidi==0.6.6; python_version >= '3.9'
7474
arabic-reshaper==3.0.0
7575
pillow==10.4.0; python_version < '3.9' # last Python 3.8 release
76-
pillow>=11.1.0; python_version >= '3.9'
76+
pillow>=11.2.0; python_version >= '3.9'
7777
pydantic==2.11.1; (platform_system=='Windows' and python_version>'3.10') or sys_platform=='darwin' or platform_system=='Linux'
7878
pydantic==2.7.1; (platform_system=='Windows' and python_version<'3.9') # last version working with Windows 7/8 pending resolution of pydantic Issue #9920
7979
babel==2.17.0

wiki/ReleaseHistory.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,20 @@ Detailed Release History
22
========================
33

44
----
5-
v3.1.1
5+
v3.1.2 (April XX, 2025)
66
------------------
77

88

99
* ADDITIONS
10+
- adds event replay ramping by time and temperature
11+
- events displayed in step and combo mode can be updated by moving them to a new position. Pressing SHIFT restricts the movement in either the x or the y direction.
12+
- a picked custom event can be removed using the backspace key
1013
- adds drag-and-drop to Stats Summary table configuration
1114
- adds hiding of scheduled items via a right-click or drag-out
1215
- adds support for feeding data from energy meters into Artisans roast energy calculator
1316
- adds new flag "Set batch size" to background dialog. If ticked the batch size is taken from the background profile on load while scheduler is off
1417
- adds sorting to the background events table
1518
- adds configuration to allow to send MODBUS PID SV as 32bit float
16-
- adds event replay ramping by time and temperature
1719
- adds new Artisan Commands (with `n` from `{1,2,3,4}`)
1820
- `quantifier(n,<bool>)` to toggle quantification per event type
1921
- `playback(n,<bool>)` to toggle event playback per event type
@@ -23,16 +25,14 @@ v3.1.1
2325
- adds event slider input dialog via a double-click on a sliders LCD
2426
- adds slider focus on slider LCD click
2527
- adds quick keyboard focused event slider input using numeric keys followed by the ENTER/RETURN key. The last digit can be removed by using the backspace key. ESC cancels the action.
26-
- events displayed in step and combo mode can be updated by moving them to a new position. Pressing SHIFT restricts the movement in either the x or the y direction.
27-
- a picked custom event can be removed using the backspace key
2828
- a double click on the graph canvas temporarily scales the y-axis to cover all artists
2929
- adds search to help pages
3030

3131

3232
* NEW HARDWARE SUPPORT
33-
- adds support for [Carmomaq's Stratto Lab sample roaster](https://carmomaq.com.br/en/produtos/stratto-roaster-lab/)
3433
- adds a new [IMF](https://artisan-scope.org/machines/imf/) machine setup that supports machine control enabling IT/BT and IT/Power profiling
3534
- updated [Giesen](https://artisan-scope.org/machines/giesen/) machine support (now incl. sample roasters and PRO machines) supporting the control of additional actors
35+
- adds support for [Carmomaq's Stratto Lab sample roaster](https://artisan-scope.org/machines/carmomaq/)
3636
- adds support for the [DCC1100 and DCC1120 Brushless DC Motor controllers and the DCC1020 DC Motor controller](https://artisan-scope.org/devices/phidgets/#45-dc-motor-control) ([Discussion #1750](../../../discussions/1750))
3737
- adds [ROEST](https://artisan-scope.org/machines/roest/) CSV import
3838
- adds [Thermoworks BlueDOT](https://www.thermoworks.com/bluedot) support
@@ -50,17 +50,17 @@ v3.1.1
5050
- the parameters "max. number of custom buttons per row", "button size", "alternative slider layout", "mark last pressed" and "show tooltips" are now persisted per palette
5151
- a click in a sliders pane no longer moves the slider, but just gives that slider the input focus (a click in a slider's bar still moves the slider to this position)
5252
- the quick custom event entry using the q, w, e and e key followed by number keys now requires the ENTER/RETURN key to establish the new value. The last entered digit can be removed by using the backspace key. ESC cancels the action.
53-
- improved accuracy on rendering [artisan.plus](https://artisan.plus) blend component weights
54-
- improved Cropster importer
5553
- event replay at any time ensures that only future events are replayed. As the set of future events may change on moving the background profile, an event can still be replayed again. In previous Artisan versions, events did replay only once per roast.
5654
- persist Energy Tab summary choice
5755
- suppresses pick year from [artisan.plus](https://artisan.plus) beans pop up and roast name suggestion if origin/name combination is unique
56+
- improved accuracy on rendering [artisan.plus](https://artisan.plus) blend component weights
57+
- improved Cropster importer
5858

5959
* FIXES
60+
- fixes processing of MODBUS function 2 request which broke the just introduced autoCHARGE/autoDROP triggered by [Loring machines](https://artisan-scope.org/machines/loring/)
6061
- ensure complete reset to defaults in energy tab loads tab
6162
- makes loading of (broken) profiles with inconsistent data length more robust
6263
- prevents exceptions caused by empty event type names ([Discussion #1745](../../../discussions/1745))
63-
- fixes processing of MODBUS function 2 request which broke the just introduced autoCHARGE/autoDROP triggered by Loring machines
6464
- fixes a typo which allowed to open multiple Roast Properties dialogs ([Issue #1781](../../../issues/1781))
6565
- fixes regression introduced in v3.0 which prevented the replay of events before CHARGE
6666
- fixes an issue in event replay where certain events failed to be replayed by temperature

0 commit comments

Comments
 (0)