jevstrudel.git / website / src / content / blog / release-1.0.0-geburtstagskuchen.mdx
release-1.0.0-geburtstagskuchen.mdx236 lines · 15.8 KB · raw
1---
2title: 'Release Notes v1.0.0'
3description: ''
4date: '2024-01-22'
5tags: ['meta']
6author: froos
7---
8
9These are the release notes for Strudel 1.0.0 aka "Geburtstagskuchen"
10
11This release marks the 2 year anniversary of the project, the first commit was on the 22nd January 2022 by Alex McLean.
12
13If you generally need a heads up on what happened to Strudel in the last year, read the [2023 recap](/blog/#year-2)
14
15import { Youtube } from '@src/components/Youtube';
16
17<Youtube client:only="react" id="ByPFmSBqQk0" />
18
19A lot has happened since then, and also since the last release 16 weeks ago.
20
21Let me write up some of the highlights:
22
23## Breaking Change
24
25This version changes the default cps value from 1 to 0.5 to give patterns a little bit more time by default.
26If you find your existing patterns to be suddenly half the speed, just add a `setcps(1)` to the top and it should sound as it did before!
27
28- make 0.5hz cps the default by @yaxu in https://codeberg.org/uzu/strudel/pulls/931
29
30## New Domain
31
32Strudel is now available under [strudel.cc](https://strudel.cc/). The old domain still works but you might not get the most recent version.
33
34- replace strudel.tidalcycles.org with strudel.cc by @felixroos in https://codeberg.org/uzu/strudel/pulls/768
35
36## Strudel on Mastodon
37
38Strudel now has a mastodon presence: https://social.toplap.org/@strudel
39
40## New Audio Engine Features
41
42superdough, the audio engine of strudel has gotten some new features:
43
44- Create phaser effect by @daslyfe in https://codeberg.org/uzu/strudel/pulls/798
45- Multichannel audio by @daslyfe in https://codeberg.org/uzu/strudel/pulls/820
46- Audio device selection by @daslyfe in https://codeberg.org/uzu/strudel/pulls/854
47- Better convolution reverb by generating impulse responses by @Bubobubobubobubo and @felixroos in https://codeberg.org/uzu/strudel/pulls/718
48- Add 'white', 'pink' and 'brown' oscillators + refactor synth by @Bubobubobubobubo and @felixroos in https://codeberg.org/uzu/strudel/pulls/713
49- New noise type: "crackle" by @Bubobubobubobubo in https://codeberg.org/uzu/strudel/pulls/806
50- Add support for using samples as impulse response buffers for the reverb by @vasilymilovidov in https://codeberg.org/uzu/strudel/pulls/717
51- Compressor by @felixroos in https://codeberg.org/uzu/strudel/pulls/729
52- Adding vibrato to Superdough sampler by @Bubobubobubobubo and @felixroos in https://codeberg.org/uzu/strudel/pulls/706
53- Further Envelope improvements by @daslyfe in https://codeberg.org/uzu/strudel/pulls/868
54- Add more vowel qualities for the vowels function by @fnordomat in https://codeberg.org/uzu/strudel/pulls/907
55- pitch envelope by @felixroos in https://codeberg.org/uzu/strudel/pulls/913
56
57## Slider Controls
58
59The new `slider` function inlines a draggable slider element into the code, bridging the gap between code and GUI.
60
61- widgets by @felixroos in https://codeberg.org/uzu/strudel/pulls/714
62- Slider afterthoughts by @felixroos in https://codeberg.org/uzu/strudel/pulls/723
63- add xfade by @felixroos in https://codeberg.org/uzu/strudel/pulls/780
64
65## Improved MIDI integration
66
67Pattern params [can now be controlled with cc messages](https://www.youtube.com/watch?v=e2-Sv_jjDQk) + you can now send a MIDI clock to sync your DAW with strudel.
68
69- Midi in by @felixroos in https://codeberg.org/uzu/strudel/pulls/699
70- add midi clock support by @felixroos in https://codeberg.org/uzu/strudel/pulls/710
71
72## hydra
73
74[hydra](https://hydra.ojack.xyz), the live coding video synth [can now be used directly inside the strudel REPL](https://strudel.cc/learn/hydra/).
75
76- Hydra integration by @felixroos in https://codeberg.org/uzu/strudel/pulls/759
77- add options param to initHydra by @kasparsj in https://codeberg.org/uzu/strudel/pulls/808
78- Hydra fixes and improvements by @atfornes in https://codeberg.org/uzu/strudel/pulls/818
79
80## Vanilla REPL
81
82The codemirror editor and the repl abstraction have been refactored from react to vanilla JS!
83This should give some performance improvements and less dependency / maintenance burden:
84
85- Vanilla repl 2 by @felixroos in https://codeberg.org/uzu/strudel/pulls/863
86- Vanilla repl 3 by @felixroos in https://codeberg.org/uzu/strudel/pulls/865
87- more work on vanilla repl: repl web component + package + MicroRepl by @felixroos in https://codeberg.org/uzu/strudel/pulls/866
88- main repl vanillification by @felixroos in https://codeberg.org/uzu/strudel/pulls/873
89- final vanillification by @felixroos in https://codeberg.org/uzu/strudel/pulls/876
90
91## Doc Changes
92
93Plenty of things have been added to the docs, including a [showcase of what people have been done with strudel](https://strudel.cc/intro/showcase/) and the new [Community Bakery](/bakery/)!
94
95<details>
96<summary>show PRs</summary>
97
98- Showcase by @felixroos in https://codeberg.org/uzu/strudel/pulls/885
99- Recipes by @felixroos in https://codeberg.org/uzu/strudel/pulls/742
100- Document striate function by @ilesinge in https://codeberg.org/uzu/strudel/pulls/766
101- Document adsr function by @ilesinge in https://codeberg.org/uzu/strudel/pulls/767
102- Add function params in reference tab by @ilesinge in https://codeberg.org/uzu/strudel/pulls/785
103- Update first-sounds.mdx by @bwagner in https://codeberg.org/uzu/strudel/pulls/794
104- Update recap.mdx by @bwagner in https://codeberg.org/uzu/strudel/pulls/797
105- Update pattern-effects.mdx by @bwagner in https://codeberg.org/uzu/strudel/pulls/796
106- Update first-effects.mdx by @bwagner in https://codeberg.org/uzu/strudel/pulls/795
107- Document pianoroll by @ilesinge in https://codeberg.org/uzu/strudel/pulls/784
108- Add doc for euclidLegatoRot, wordfall and slider by @ilesinge in https://codeberg.org/uzu/strudel/pulls/801
109- Improve documentation for synonym functions by @ilesinge in https://codeberg.org/uzu/strudel/pulls/800
110- Add and style algolia search by @ilesinge in https://codeberg.org/uzu/strudel/pulls/827
111- Fix a typo by @drewgbarnes in https://codeberg.org/uzu/strudel/pulls/830
112- add mastodon link by @felixroos in https://codeberg.org/uzu/strudel/pulls/884
113- adds a blog by @felixroos in https://codeberg.org/uzu/strudel/pulls/911
114- community bakery by @felixroos in https://codeberg.org/uzu/strudel/pulls/923
115- Blog improvements by @felixroos in https://codeberg.org/uzu/strudel/pulls/919
116- 2 years blog post by @felixroos in https://codeberg.org/uzu/strudel/pulls/929
117
118</details>
119
120## Other Features
121
122<details>
123<summary>There is a lot more</summary>
124
125- mini notation: international alphabets support by @ilesinge in https://codeberg.org/uzu/strudel/pulls/751
126- Add shabda shortcut by @ilesinge in https://codeberg.org/uzu/strudel/pulls/740
127- add play function by @felixroos in https://codeberg.org/uzu/strudel/pulls/758 (superseded by next)
128- tidal style d1 ... d9 functions + more by @felixroos in https://codeberg.org/uzu/strudel/pulls/805
129- add vscode bindings by @Dsm0 in https://codeberg.org/uzu/strudel/pulls/773
130- Implement optional hover tooltip with function documentation by @ilesinge in https://codeberg.org/uzu/strudel/pulls/783
131- samples loading shortcuts: by @felixroos in https://codeberg.org/uzu/strudel/pulls/788
132- add option to disable active line highlighting in Code Settings by @kasparsj in https://codeberg.org/uzu/strudel/pulls/804
133- Color hsl by @felixroos in https://codeberg.org/uzu/strudel/pulls/815
134- Patterns tab + Refactor Panel by @felixroos in https://codeberg.org/uzu/strudel/pulls/769
135- patterns tab: import patterns + style by @felixroos in https://codeberg.org/uzu/strudel/pulls/852
136- Export patterns + ui tweaks by @felixroos in https://codeberg.org/uzu/strudel/pulls/855
137- Pattern organization by @felixroos in https://codeberg.org/uzu/strudel/pulls/858
138- Sound Import from local file system by @daslyfe in https://codeberg.org/uzu/strudel/pulls/839
139- bugfix: suspend and close existing audio context when changing interface by @daslyfe in https://codeberg.org/uzu/strudel/pulls/882
140- add root mode for voicings by @felixroos in https://codeberg.org/uzu/strudel/pulls/887
141- scales can now be anchored by @felixroos in https://codeberg.org/uzu/strudel/pulls/888
142- add dough function for raw dsp by @felixroos in https://codeberg.org/uzu/strudel/pulls/707 (experimental)
143- support mininotation '..' range operator, fixes #715 by @yaxu in https://codeberg.org/uzu/strudel/pulls/716
144- Add pick and squeeze functions by @daslyfe in https://codeberg.org/uzu/strudel/pulls/771
145- support , in < > by @felixroos in https://codeberg.org/uzu/strudel/pulls/886
146- public sharing by @felixroos in https://codeberg.org/uzu/strudel/pulls/910
147- pick, pickmod, inhabit, inhabitmod by @yaxu in https://codeberg.org/uzu/strudel/pulls/921
148- Mini-notation additions towards tidal compatibility by @yaxu in https://codeberg.org/uzu/strudel/pulls/926
149- add pickF and pickmodF by @geikha in https://codeberg.org/uzu/strudel/pulls/924
150- Make splice cps-aware by @yaxu in https://codeberg.org/uzu/strudel/pulls/932
151- Refactor cps functions by @felixroos in https://codeberg.org/uzu/strudel/pulls/933
152- Add useful pattern selection behavior for performing. by @daslyfe in https://codeberg.org/uzu/strudel/pulls/897
153
154</details>
155
156## Other Fixes
157
158<details>
159<summary>show</summary>
160
161- fix: finally repair envelopes by @felixroos in https://codeberg.org/uzu/strudel/pulls/861
162- fix: reverb regenerate loophole by @felixroos in https://codeberg.org/uzu/strudel/pulls/726
163- fix: reverb roomsize not required by @felixroos in https://codeberg.org/uzu/strudel/pulls/731
164- fix: reverb sampleRate by @felixroos in https://codeberg.org/uzu/strudel/pulls/732
165- consume n with scale by @felixroos in https://codeberg.org/uzu/strudel/pulls/727
166- fix: hashes in urls by @felixroos in https://codeberg.org/uzu/strudel/pulls/728
167- [Bug Fix] chooseWith: prevent pattern from stopping audio when selection is >= 1 or < 0 by @daslyfe in https://codeberg.org/uzu/strudel/pulls/741
168- Fix addivite synthesis phases by @felixroos in https://codeberg.org/uzu/strudel/pulls/762
169- fix: scale offset by @felixroos in https://codeberg.org/uzu/strudel/pulls/764
170- fix zen mode logo overlap by @felixroos in https://codeberg.org/uzu/strudel/pulls/760
171- fix: share copy to clipboard + alert by @felixroos in https://codeberg.org/uzu/strudel/pulls/774
172- fix: style issues by @felixroos in https://codeberg.org/uzu/strudel/pulls/781
173- Fix scope pos + document by @felixroos in https://codeberg.org/uzu/strudel/pulls/786
174- don't use anchor links for reference by @felixroos in https://codeberg.org/uzu/strudel/pulls/791
175- remove unwanted cm6 outline for strudelTheme by @kasparsj in https://codeberg.org/uzu/strudel/pulls/802
176- FIXES: palindrome abc -> abccba by @bwagner in https://codeberg.org/uzu/strudel/pulls/831
177- Bug Fix #119: Clock drift by @daslyfe in https://codeberg.org/uzu/strudel/pulls/874
178- bugfix: sound select indexes out of bounds by @daslyfe in https://codeberg.org/uzu/strudel/pulls/871
179- Error tolerance by @felixroos in https://codeberg.org/uzu/strudel/pulls/880
180- fix: make sure n is never undefined before nanFallback by @felixroos in https://codeberg.org/uzu/strudel/pulls/881
181- fix: invisible selection on vim + emacs mode by @felixroos in https://codeberg.org/uzu/strudel/pulls/889
182- fix: autocomplete / tooltip code example bug by @felixroos in https://codeberg.org/uzu/strudel/pulls/898
183- Fix examples page, piano() and a few workshop imgs by @shiyouganai in https://codeberg.org/uzu/strudel/pulls/848
184- fix: trailing slash confusion by @felixroos in https://codeberg.org/uzu/strudel/pulls/743
185- fix: try different trailing slash behavior by @felixroos in https://codeberg.org/uzu/strudel/pulls/744
186- Fix krill build command in README by @ilesinge in https://codeberg.org/uzu/strudel/pulls/748
187- Fix for #1. Enables named instruments for csoundm. by @gogins in https://codeberg.org/uzu/strudel/pulls/662
188- fix: missing hash for links starting with / by @felixroos in https://codeberg.org/uzu/strudel/pulls/845
189- fix: swatch png src by @felixroos in https://codeberg.org/uzu/strudel/pulls/846
190- Fix edge case with rehype-urls and trailing slashes in image file paths by @shiyouganai in https://codeberg.org/uzu/strudel/pulls/849
191- fix: multiple repls by @felixroos in https://codeberg.org/uzu/strudel/pulls/813
192- Fix chunk, add fastChunk and repeatCycles by @yaxu in https://codeberg.org/uzu/strudel/pulls/712
193- Update tauri.yml workflow file by @vasilymilovidov in https://codeberg.org/uzu/strudel/pulls/705
194- vite-vanilla-repl readme fix by @felixroos in https://codeberg.org/uzu/strudel/pulls/737
195- completely revert config mess by @felixroos in https://codeberg.org/uzu/strudel/pulls/745
196- hopefully fix trailing slashes bug by @felixroos in https://codeberg.org/uzu/strudel/pulls/753
197- Update vite pwa by @felixroos in https://codeberg.org/uzu/strudel/pulls/772
198- Update to Astro 3 by @felixroos in https://codeberg.org/uzu/strudel/pulls/775
199- support multiple named serial connections, change default baudrate by @yaxu in https://codeberg.org/uzu/strudel/pulls/551
200- CHANGES: github action checkout v2 -> v4 by @bwagner in https://codeberg.org/uzu/strudel/pulls/837
201- CHANGES: pin pnpm to version 8.3.1 by @bwagner in https://codeberg.org/uzu/strudel/pulls/834
202- CHANGES: github action pnpm version from 7 to 8.3.1 by @bwagner in https://codeberg.org/uzu/strudel/pulls/835
203- ADDS: JetBrains IDE files and directories to .gitignore by @bwagner in https://codeberg.org/uzu/strudel/pulls/840
204- Prevent 404 on Algolia crawls by @ilesinge in https://codeberg.org/uzu/strudel/pulls/838
205- Add in fixes from my fork to slashocalypse branch by @shiyouganai in https://codeberg.org/uzu/strudel/pulls/843
206- improve slashing + base href behavior by @felixroos in https://codeberg.org/uzu/strudel/pulls/842
207- CHANGES: pnpm 8.1.3 to 8.11.0 by @bwagner in https://codeberg.org/uzu/strudel/pulls/850
208- add missing trailing slashes by @felixroos in https://codeberg.org/uzu/strudel/pulls/860
209- move all examples to separate examples folder by @felixroos in https://codeberg.org/uzu/strudel/pulls/878
210- Dependency update by @felixroos in https://codeberg.org/uzu/strudel/pulls/879
211- Update Vite version so hot reload works properly with newest pnpm version by @daslyfe in https://codeberg.org/uzu/strudel/pulls/892
212- prevent vite from complaining about additional exports in jsx files by @daslyfe in https://codeberg.org/uzu/strudel/pulls/891
213- fix some build warnings by @felixroos in https://codeberg.org/uzu/strudel/pulls/902
214- Remove hideHeader for better mobile UI and consistency by @rjulian in https://codeberg.org/uzu/strudel/pulls/894
215- Fix: swatch/[name].png.js static path by @oscarbyrne in https://codeberg.org/uzu/strudel/pulls/916
216- rename @strudel.cycles/_ packages to @strudel/_ by @felixroos in https://codeberg.org/uzu/strudel/pulls/917
217- `pick` now accepts lookup tables, with alternate cycle squeezing behaviour as new `inhabit` function by @yaxu in https://codeberg.org/uzu/strudel/pulls/918
218- Revert "`pick` now accepts lookup tables, with alternate cycle squeezing behaviour as new `inhabit` function" by @yaxu in https://codeberg.org/uzu/strudel/pulls/920
219- Fix pattern tab not showing patterns without created date by @daslyfe in https://codeberg.org/uzu/strudel/pulls/934
220
221</details>
222
223## New Contributors
224
225- @ilesinge made their first contribution in https://codeberg.org/uzu/strudel/pulls/748
226- @Dsm0 made their first contribution in https://codeberg.org/uzu/strudel/pulls/773
227- @kasparsj made their first contribution in https://codeberg.org/uzu/strudel/pulls/802
228- @atfornes made their first contribution in https://codeberg.org/uzu/strudel/pulls/818
229- @drewgbarnes made their first contribution in https://codeberg.org/uzu/strudel/pulls/830
230- @shiyouganai made their first contribution in https://codeberg.org/uzu/strudel/pulls/843
231- @rjulian made their first contribution in https://codeberg.org/uzu/strudel/pulls/894
232- @fnordomat made their first contribution in https://codeberg.org/uzu/strudel/pulls/907
233- @oscarbyrne made their first contribution in https://codeberg.org/uzu/strudel/pulls/916
234- @geikha made their first contribution in https://codeberg.org/uzu/strudel/pulls/924
235
236**Full Changelog**: https://codeberg.org/uzu/strudel/compare/v0.9.0...v1.0.0