Compare commits

...

8 Commits

Author SHA1 Message Date
Jade (Rose) Rowland 1cbf14bcdb working 2024-02-24 23:47:17 -05:00
Felix Roos dd64bf0fc9 Merge pull request #938 from tidalcycles/pianoroll-sorting
fix: pianoroll sorting
2024-01-24 16:48:57 +01:00
Felix Roos 434eb3b256 fix: pianoroll sorting 2024-01-24 16:40:26 +01:00
Felix Roos 8fef75385a Update README.md 2024-01-23 01:35:28 +01:00
Felix Roos c66b9219a8 Update README.md 2024-01-23 01:31:11 +01:00
Felix Roos 2a1f8823e8 Merge pull request #935 from tidalcycles/v1-release-notes
V1 release notes
2024-01-23 00:04:03 +01:00
Felix Roos 3da65f90e3 shorter titles for release notes 2024-01-22 23:55:57 +01:00
Felix Roos a36cc24087 v1 release notes 2024-01-22 23:55:49 +01:00
16 changed files with 279 additions and 22 deletions
+2 -1
View File
@@ -2,12 +2,13 @@
[![Strudel test status](https://github.com/tidalcycles/strudel/actions/workflows/test.yml/badge.svg)](https://github.com/tidalcycles/strudel/actions)
An experiment in making a [Tidal](https://github.com/tidalcycles/tidal/) using web technologies. This software is slowly stabilising, but please continue to tread carefully.
An experiment in making a [Tidal](https://github.com/tidalcycles/tidal/) using web technologies. This software is a bit more stable now, but please continue to tread carefully.
- Try it here: <https://strudel.cc>
- Docs: <https://strudel.cc/learn>
- Technical Blog Post: <https://loophole-letters.vercel.app/strudel>
- 1 Year of Strudel Blog Post: <https://loophole-letters.vercel.app/strudel1year>
- 2 Years of Strudel Blog Post: <https://strudel.cc/blog/#year-2>
## Running Locally
+14 -8
View File
@@ -10,9 +10,8 @@ https://rohandrape.net/?t=hmt
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
import { Pattern, timeCat, register, silence } from './pattern.mjs';
import { timeCat, register, silence } from './pattern.mjs';
import { rotate, flatten, splitAt, zipWith } from './util.mjs';
import Fraction from './fraction.mjs';
const left = function (n, x) {
const [ons, offs] = n;
@@ -58,6 +57,7 @@ export const bjork = function (ons, steps) {
*
* @memberof Pattern
* @name euclid
* @synonyms euc
* @param {number} pulses the number of onsets / beats
* @param {number} steps the number of steps to fill
* @returns Pattern
@@ -70,6 +70,7 @@ export const bjork = function (ons, steps) {
* Like `euclid`, but has an additional parameter for 'rotating' the resulting sequence.
* @memberof Pattern
* @name euclidRot
* @synonyms eucr
* @param {number} pulses the number of onsets / beats
* @param {number} steps the number of steps to fill
* @param {number} rotation offset in steps
@@ -132,18 +133,22 @@ const _euclidRot = function (pulses, steps, rotation) {
return b;
};
export const euclid = register('euclid', function (pulses, steps, pat) {
export const euclid = register(['euclid', 'euc'], function (pulses, steps, pat) {
return pat.struct(_euclidRot(pulses, steps, 0));
});
export const { euclidrot, euclidRot } = register(['euclidrot', 'euclidRot'], function (pulses, steps, rotation, pat) {
return pat.struct(_euclidRot(pulses, steps, rotation));
});
export const { euclidrot, euclidRot } = register(
['euclidrot', 'euclidRot', 'eucr'],
function (pulses, steps, rotation, pat) {
return pat.struct(_euclidRot(pulses, steps, rotation));
},
);
/**
* Similar to `euclid`, but each pulse is held until the next pulse,
* so there will be no gaps.
* @name euclidLegato
* @synonyms eucl
* @memberof Pattern
* @param {number} pulses the number of onsets / beats
* @param {number} steps the number of steps to fill
@@ -164,7 +169,7 @@ const _euclidLegato = function (pulses, steps, rotation, pat) {
return pat.struct(timeCat(...gapless));
};
export const euclidLegato = register(['euclidLegato'], function (pulses, steps, pat) {
export const euclidLegato = register(['euclidLegato', 'eucl'], function (pulses, steps, pat) {
return _euclidLegato(pulses, steps, 0, pat);
});
@@ -173,6 +178,7 @@ export const euclidLegato = register(['euclidLegato'], function (pulses, steps,
* so there will be no gaps, and has an additional parameter for 'rotating'
* the resulting sequence
* @name euclidLegatoRot
* @synonyms euclr
* @memberof Pattern
* @param {number} pulses the number of onsets / beats
* @param {number} steps the number of steps to fill
@@ -180,6 +186,6 @@ export const euclidLegato = register(['euclidLegato'], function (pulses, steps,
* @example
* note("c3").euclidLegatoRot(3,5,2)
*/
export const euclidLegatoRot = register(['euclidLegatoRot'], function (pulses, steps, rotation, pat) {
export const euclidLegatoRot = register(['euclidLegatoRot', 'euclr'], function (pulses, steps, rotation, pat) {
return _euclidLegato(pulses, steps, rotation, pat);
});
+7 -2
View File
@@ -160,8 +160,13 @@ export function pianoroll({
maxMidi = max;
valueExtent = maxMidi - minMidi + 1;
}
// foldValues = values.sort((a, b) => a - b);
foldValues = values.sort((a, b) => String(a).localeCompare(String(b)));
foldValues = values.sort((a, b) =>
typeof a === 'number' && typeof b === 'number'
? a - b
: typeof a === 'number'
? 1
: String(a).localeCompare(String(b)),
);
barThickness = fold ? valueAxis / foldValues.length : valueAxis / valueExtent;
ctx.fillStyle = background;
ctx.globalAlpha = 1; // reset!
+7
View File
@@ -262,6 +262,13 @@ declare module 'astro:content' {
collection: "blog";
data: InferEntrySchema<"blog">
} & { render(): Render[".mdx"] };
"release-1.0.0-geburtstagskuchen.mdx": {
id: "release-1.0.0-geburtstagskuchen.mdx";
slug: "release-100-geburtstagskuchen";
body: string;
collection: "blog";
data: InferEntrySchema<"blog">
} & { render(): Render[".mdx"] };
"year-2.mdx": {
id: "year-2.mdx";
slug: "year-2";
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.0.2 Schwindlig'
title: 'Release Notes v0.0.2'
description: ''
date: '2022-03-28'
tags: ['meta']
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.0.3 Stürmisch'
title: 'Release Notes v0.0.3'
date: '2022-05-20'
tags: ['meta']
author: froos
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.0.3 Maelstrom'
title: 'Release Notes v0.0.3'
description: ''
date: '2022-06-18'
tags: ['meta']
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.0.4 Gischt'
title: 'Release Notes v0.0.4'
description: ''
date: '2022-08-14'
tags: ['meta']
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.3.0 Donauwelle'
title: 'Release Notes v0.3.0'
description: ''
date: '2022-11-06'
tags: ['meta']
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.4.0 Brandung'
title: 'Release Notes v0.4.0'
description: ''
date: '2022-11-13'
tags: ['meta']
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.5.0 Wirbel'
title: 'Release Notes v0.5.0'
description: ''
date: '2022-12-13'
tags: ['meta']
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.6.0 Zimtschnecke'
title: 'Release Notes v0.6.0'
description: ''
date: '2023-02-01'
tags: ['meta']
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.7.0 Zuckerguss'
title: 'Release Notes v0.7.0'
description: ''
date: '2023-03-23'
tags: ['meta']
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.8.0 Himbeermuffin'
title: 'Release Notes v0.8.0'
description: ''
date: '2023-06-30'
tags: ['meta']
@@ -1,5 +1,5 @@
---
title: 'Release Notes v0.9.0 Bananenbrot'
title: 'Release Notes v0.9.0'
description: ''
date: '2023-09-17'
tags: ['meta']
@@ -0,0 +1,238 @@
---
title: 'Release Notes v1.0.0'
description: ''
date: '2024-01-22'
tags: ['meta']
author: froos
---
import BlogVideo from '../../components/BlogVideo.astro';
These are the release notes for Strudel 1.0.0 aka "Geburtstagskuchen"
This release marks the 2 year anniversary of the project, the first commit was on the 22nd January 2022 by Alex McLean.
If you generally need a heads up on what happened to Strudel in the last year, read the [2023 recap](/blog/#year-2)
import { Youtube } from '@src/components/Youtube';
<Youtube client:only="react" id="ByPFmSBqQk0" />
A lot has happened since then, and also since the last release 16 weeks ago.
Let me write up some of the highlights:
## Breaking Change
This version changes the default cps value from 1 to 0.5 to give patterns a little bit more time by default.
If 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!
- make 0.5hz cps the default by @yaxu in https://github.com/tidalcycles/strudel/pull/931
## New Domain
Strudel is now available under [strudel.cc](https://strudel.cc/). The old domain still works but you might not get the most recent version.
- replace strudel.tidalcycles.org with strudel.cc by @felixroos in https://github.com/tidalcycles/strudel/pull/768
## Strudel on Mastodon
Strudel now has a mastodon presence: https://social.toplap.org/@strudel
## New Audio Engine Features
superdough, the audio engine of strudel has gotten some new features:
- Create phaser effect by @daslyfe in https://github.com/tidalcycles/strudel/pull/798
- Multichannel audio by @daslyfe in https://github.com/tidalcycles/strudel/pull/820
- Audio device selection by @daslyfe in https://github.com/tidalcycles/strudel/pull/854
- Better convolution reverb by generating impulse responses by @Bubobubobubobubo and @felixroos in https://github.com/tidalcycles/strudel/pull/718
- Add 'white', 'pink' and 'brown' oscillators + refactor synth by @Bubobubobubobubo and @felixroos in https://github.com/tidalcycles/strudel/pull/713
- New noise type: "crackle" by @Bubobubobubobubo in https://github.com/tidalcycles/strudel/pull/806
- Add support for using samples as impulse response buffers for the reverb by @vasilymilovidov in https://github.com/tidalcycles/strudel/pull/717
- Compressor by @felixroos in https://github.com/tidalcycles/strudel/pull/729
- Adding vibrato to Superdough sampler by @Bubobubobubobubo and @felixroos in https://github.com/tidalcycles/strudel/pull/706
- Further Envelope improvements by @daslyfe in https://github.com/tidalcycles/strudel/pull/868
- Add more vowel qualities for the vowels function by @fnordomat in https://github.com/tidalcycles/strudel/pull/907
- pitch envelope by @felixroos in https://github.com/tidalcycles/strudel/pull/913
## Slider Controls
The new `slider` function inlines a draggable slider element into the code, bridging the gap between code and GUI.
- widgets by @felixroos in https://github.com/tidalcycles/strudel/pull/714
- Slider afterthoughts by @felixroos in https://github.com/tidalcycles/strudel/pull/723
- add xfade by @felixroos in https://github.com/tidalcycles/strudel/pull/780
## Improved MIDI integration
Pattern 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.
- Midi in by @felixroos in https://github.com/tidalcycles/strudel/pull/699
- add midi clock support by @felixroos in https://github.com/tidalcycles/strudel/pull/710
## hydra
[hydra](https://hydra.ojack.xyz), the live coding video synth [can now be used directly inside the strudel REPL](https://strudel.cc/learn/hydra/).
- Hydra integration by @felixroos in https://github.com/tidalcycles/strudel/pull/759
- add options param to initHydra by @kasparsj in https://github.com/tidalcycles/strudel/pull/808
- Hydra fixes and improvements by @atfornes in https://github.com/tidalcycles/strudel/pull/818
## Vanilla REPL
The codemirror editor and the repl abstraction have been refactored from react to vanilla JS!
This should give some performance improvements and less dependency / maintenance burden:
- Vanilla repl 2 by @felixroos in https://github.com/tidalcycles/strudel/pull/863
- Vanilla repl 3 by @felixroos in https://github.com/tidalcycles/strudel/pull/865
- more work on vanilla repl: repl web component + package + MicroRepl by @felixroos in https://github.com/tidalcycles/strudel/pull/866
- main repl vanillification by @felixroos in https://github.com/tidalcycles/strudel/pull/873
- final vanillification by @felixroos in https://github.com/tidalcycles/strudel/pull/876
## Doc Changes
Plenty 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/)!
<details>
<summary>show PRs</summary>
- Showcase by @felixroos in https://github.com/tidalcycles/strudel/pull/885
- Recipes by @felixroos in https://github.com/tidalcycles/strudel/pull/742
- Document striate function by @ilesinge in https://github.com/tidalcycles/strudel/pull/766
- Document adsr function by @ilesinge in https://github.com/tidalcycles/strudel/pull/767
- Add function params in reference tab by @ilesinge in https://github.com/tidalcycles/strudel/pull/785
- Update first-sounds.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/794
- Update recap.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/797
- Update pattern-effects.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/796
- Update first-effects.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/795
- Document pianoroll by @ilesinge in https://github.com/tidalcycles/strudel/pull/784
- Add doc for euclidLegatoRot, wordfall and slider by @ilesinge in https://github.com/tidalcycles/strudel/pull/801
- Improve documentation for synonym functions by @ilesinge in https://github.com/tidalcycles/strudel/pull/800
- Add and style algolia search by @ilesinge in https://github.com/tidalcycles/strudel/pull/827
- Fix a typo by @drewgbarnes in https://github.com/tidalcycles/strudel/pull/830
- add mastodon link by @felixroos in https://github.com/tidalcycles/strudel/pull/884
- adds a blog by @felixroos in https://github.com/tidalcycles/strudel/pull/911
- community bakery by @felixroos in https://github.com/tidalcycles/strudel/pull/923
- Blog improvements by @felixroos in https://github.com/tidalcycles/strudel/pull/919
- 2 years blog post by @felixroos in https://github.com/tidalcycles/strudel/pull/929
</details>
## Other Features
<details>
<summary>There is a lot more</summary>
- mini notation: international alphabets support by @ilesinge in https://github.com/tidalcycles/strudel/pull/751
- Add shabda shortcut by @ilesinge in https://github.com/tidalcycles/strudel/pull/740
- add play function by @felixroos in https://github.com/tidalcycles/strudel/pull/758 (superseded by next)
- tidal style d1 ... d9 functions + more by @felixroos in https://github.com/tidalcycles/strudel/pull/805
- add vscode bindings by @Dsm0 in https://github.com/tidalcycles/strudel/pull/773
- Implement optional hover tooltip with function documentation by @ilesinge in https://github.com/tidalcycles/strudel/pull/783
- samples loading shortcuts: by @felixroos in https://github.com/tidalcycles/strudel/pull/788
- add option to disable active line highlighting in Code Settings by @kasparsj in https://github.com/tidalcycles/strudel/pull/804
- Color hsl by @felixroos in https://github.com/tidalcycles/strudel/pull/815
- Patterns tab + Refactor Panel by @felixroos in https://github.com/tidalcycles/strudel/pull/769
- patterns tab: import patterns + style by @felixroos in https://github.com/tidalcycles/strudel/pull/852
- Export patterns + ui tweaks by @felixroos in https://github.com/tidalcycles/strudel/pull/855
- Pattern organization by @felixroos in https://github.com/tidalcycles/strudel/pull/858
- Sound Import from local file system by @daslyfe in https://github.com/tidalcycles/strudel/pull/839
- bugfix: suspend and close exisiting audio context when changing interface by @daslyfe in https://github.com/tidalcycles/strudel/pull/882
- add root mode for voicings by @felixroos in https://github.com/tidalcycles/strudel/pull/887
- scales can now be anchored by @felixroos in https://github.com/tidalcycles/strudel/pull/888
- add dough function for raw dsp by @felixroos in https://github.com/tidalcycles/strudel/pull/707 (experimental)
- support mininotation '..' range operator, fixes #715 by @yaxu in https://github.com/tidalcycles/strudel/pull/716
- Add pick and squeeze functions by @daslyfe in https://github.com/tidalcycles/strudel/pull/771
- support , in < > by @felixroos in https://github.com/tidalcycles/strudel/pull/886
- public sharing by @felixroos in https://github.com/tidalcycles/strudel/pull/910
- pick, pickmod, inhabit, inhabitmod by @yaxu in https://github.com/tidalcycles/strudel/pull/921
- Mini-notation additions towards tidal compatibility by @yaxu in https://github.com/tidalcycles/strudel/pull/926
- add pickF and pickmodF by @geikha in https://github.com/tidalcycles/strudel/pull/924
- Make splice cps-aware by @yaxu in https://github.com/tidalcycles/strudel/pull/932
- Refactor cps functions by @felixroos in https://github.com/tidalcycles/strudel/pull/933
- Add useful pattern selection behavior for performing. by @daslyfe in https://github.com/tidalcycles/strudel/pull/897
</details>
## Other Fixes
<details>
<summary>show</summary>
- fix: finally repair envelopes by @felixroos in https://github.com/tidalcycles/strudel/pull/861
- fix: reverb regenerate loophole by @felixroos in https://github.com/tidalcycles/strudel/pull/726
- fix: reverb roomsize not required by @felixroos in https://github.com/tidalcycles/strudel/pull/731
- fix: reverb sampleRate by @felixroos in https://github.com/tidalcycles/strudel/pull/732
- consume n with scale by @felixroos in https://github.com/tidalcycles/strudel/pull/727
- fix: hashes in urls by @felixroos in https://github.com/tidalcycles/strudel/pull/728
- [Bug Fix] chooseWith: prevent pattern from stopping audio when selection is >= 1 or < 0 by @daslyfe in https://github.com/tidalcycles/strudel/pull/741
- Fix addivite synthesis phases by @felixroos in https://github.com/tidalcycles/strudel/pull/762
- fix: scale offset by @felixroos in https://github.com/tidalcycles/strudel/pull/764
- fix zen mode logo overlap by @felixroos in https://github.com/tidalcycles/strudel/pull/760
- fix: share copy to clipboard + alert by @felixroos in https://github.com/tidalcycles/strudel/pull/774
- fix: style issues by @felixroos in https://github.com/tidalcycles/strudel/pull/781
- Fix scope pos + document by @felixroos in https://github.com/tidalcycles/strudel/pull/786
- don't use anchor links for reference by @felixroos in https://github.com/tidalcycles/strudel/pull/791
- remove unwanted cm6 outline for strudelTheme by @kasparsj in https://github.com/tidalcycles/strudel/pull/802
- FIXES: palindrome abc -> abccba by @bwagner in https://github.com/tidalcycles/strudel/pull/831
- Bug Fix #119: Clock drift by @daslyfe in https://github.com/tidalcycles/strudel/pull/874
- bugfix: sound select indexes out of bounds by @daslyfe in https://github.com/tidalcycles/strudel/pull/871
- Error tolerance by @felixroos in https://github.com/tidalcycles/strudel/pull/880
- fix: make sure n is never undefined before nanFallback by @felixroos in https://github.com/tidalcycles/strudel/pull/881
- fix: invisible selection on vim + emacs mode by @felixroos in https://github.com/tidalcycles/strudel/pull/889
- fix: autocomplete / tooltip code example bug by @felixroos in https://github.com/tidalcycles/strudel/pull/898
- Fix examples page, piano() and a few workshop imgs by @shiyouganai in https://github.com/tidalcycles/strudel/pull/848
- fix: trailing slash confusion by @felixroos in https://github.com/tidalcycles/strudel/pull/743
- fix: try different trailing slash behavior by @felixroos in https://github.com/tidalcycles/strudel/pull/744
- Fix krill build command in README by @ilesinge in https://github.com/tidalcycles/strudel/pull/748
- Fix for #1. Enables named instruments for csoundm. by @gogins in https://github.com/tidalcycles/strudel/pull/662
- fix: missing hash for links starting with / by @felixroos in https://github.com/tidalcycles/strudel/pull/845
- fix: swatch png src by @felixroos in https://github.com/tidalcycles/strudel/pull/846
- Fix edge case with rehype-urls and trailing slashes in image file paths by @shiyouganai in https://github.com/tidalcycles/strudel/pull/849
- fix: multiple repls by @felixroos in https://github.com/tidalcycles/strudel/pull/813
- Fix chunk, add fastChunk and repeatCycles by @yaxu in https://github.com/tidalcycles/strudel/pull/712
- Update tauri.yml workflow file by @vasilymilovidov in https://github.com/tidalcycles/strudel/pull/705
- vite-vanilla-repl readme fix by @felixroos in https://github.com/tidalcycles/strudel/pull/737
- completely revert config mess by @felixroos in https://github.com/tidalcycles/strudel/pull/745
- hopefully fix trainling slashes bug by @felixroos in https://github.com/tidalcycles/strudel/pull/753
- Update vite pwa by @felixroos in https://github.com/tidalcycles/strudel/pull/772
- Update to Astro 3 by @felixroos in https://github.com/tidalcycles/strudel/pull/775
- support multiple named serial connections, change default baudrate by @yaxu in https://github.com/tidalcycles/strudel/pull/551
- CHANGES: github action checkout v2 -> v4 by @bwagner in https://github.com/tidalcycles/strudel/pull/837
- CHANGES: pin pnpm to version 8.3.1 by @bwagner in https://github.com/tidalcycles/strudel/pull/834
- CHANGES: github action pnpm version from 7 to 8.3.1 by @bwagner in https://github.com/tidalcycles/strudel/pull/835
- ADDS: JetBrains IDE files and directories to .gitignore by @bwagner in https://github.com/tidalcycles/strudel/pull/840
- Prevent 404 on Algolia crawls by @ilesinge in https://github.com/tidalcycles/strudel/pull/838
- Add in fixes from my fork to slashocalypse branch by @shiyouganai in https://github.com/tidalcycles/strudel/pull/843
- improve slashing + base href behavior by @felixroos in https://github.com/tidalcycles/strudel/pull/842
- CHANGES: pnpm 8.1.3 to 8.11.0 by @bwagner in https://github.com/tidalcycles/strudel/pull/850
- add missing trailing slashes by @felixroos in https://github.com/tidalcycles/strudel/pull/860
- move all examples to separate examples folder by @felixroos in https://github.com/tidalcycles/strudel/pull/878
- Dependency update by @felixroos in https://github.com/tidalcycles/strudel/pull/879
- Update Vite version so hot reload works properly with newest pnpm version by @daslyfe in https://github.com/tidalcycles/strudel/pull/892
- prevent vite from complaining about additional exports in jsx files by @daslyfe in https://github.com/tidalcycles/strudel/pull/891
- fix some build warnings by @felixroos in https://github.com/tidalcycles/strudel/pull/902
- Remove hideHeader for better mobile UI and consistency by @rjulian in https://github.com/tidalcycles/strudel/pull/894
- Fix: swatch/[name].png.js static path by @oscarbyrne in https://github.com/tidalcycles/strudel/pull/916
- rename @strudel.cycles/_ packages to @strudel/_ by @felixroos in https://github.com/tidalcycles/strudel/pull/917
- `pick` now accepts lookup tables, with alternate cycle squeezing behaviour as new `inhabit` function by @yaxu in https://github.com/tidalcycles/strudel/pull/918
- Revert "`pick` now accepts lookup tables, with alternate cycle squeezing behaviour as new `inhabit` function" by @yaxu in https://github.com/tidalcycles/strudel/pull/920
- Fix pattern tab not showing patterns without created date by @daslyfe in https://github.com/tidalcycles/strudel/pull/934
</details>
## New Contributors
- @ilesinge made their first contribution in https://github.com/tidalcycles/strudel/pull/748
- @Dsm0 made their first contribution in https://github.com/tidalcycles/strudel/pull/773
- @kasparsj made their first contribution in https://github.com/tidalcycles/strudel/pull/802
- @atfornes made their first contribution in https://github.com/tidalcycles/strudel/pull/818
- @drewgbarnes made their first contribution in https://github.com/tidalcycles/strudel/pull/830
- @shiyouganai made their first contribution in https://github.com/tidalcycles/strudel/pull/843
- @rjulian made their first contribution in https://github.com/tidalcycles/strudel/pull/894
- @fnordomat made their first contribution in https://github.com/tidalcycles/strudel/pull/907
- @oscarbyrne made their first contribution in https://github.com/tidalcycles/strudel/pull/916
- @geikha made their first contribution in https://github.com/tidalcycles/strudel/pull/924
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.9.0...v1.0.0