Skip to content

Commit e9ef8d7

Browse files
committed
feat: update alpha pre-release details and enable downloads for Audacity 4 Alpha 2
1 parent b934af1 commit e9ef8d7

File tree

5 files changed

+225
-78
lines changed

5 files changed

+225
-78
lines changed

src/assets/data/audacityReleases.ts

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -156,33 +156,30 @@ export type PreReleaseEntry = {
156156
export const alphaPreRelease: PreReleaseEntry = {
157157
id: "alpha",
158158
label: "Alpha",
159-
isActive: false,
159+
isActive: true,
160160
summary:
161-
"Get an early look at the next major release. Expect unfinished features and potential bugs.",
161+
"Get an early look at the next major release.",
162162
pageHref: "/next",
163163
downloads: {
164-
version: "Audacity 4 Alpha 1",
164+
version: "Audacity 4 Alpha 2",
165165
win: [
166166
{
167-
name: "64 bit",
168-
browser_download_url:
169-
"https://github.com/audacity/audacity/actions/runs/18406361889/artifacts/4237171895",
167+
name: "64 bit zip file",
168+
browser_download_url: "https://github.com/audacity/audacity/releases/download/Audacity-4.0.0-alpha-2/AU4_253031630_Win__release-4.0.0-alpha2.zip",
170169
type: ".zip",
171170
},
172171
],
173172
mac: [
174173
{
175174
name: "ARM 64 zip (Apple Silicon)",
176-
browser_download_url:
177-
"https://github.com/audacity/audacity/actions/runs/18406354692/artifacts/4237536953",
175+
browser_download_url: "https://github.com/audacity/audacity/releases/download/Audacity-4.0.0-alpha-2/AU4_253031630_Mac__release-4.0.0-alpha2.zip",
178176
type: ".zip",
179177
},
180178
],
181179
lin: [
182180
{
183181
name: "AppImage",
184-
browser_download_url:
185-
"https://github.com/audacity/audacity/actions/runs/18406368664/artifacts/4237050905",
182+
browser_download_url: "https://github.com/audacity/audacity/releases/download/Audacity-4.0.0-alpha-2/AU4_253031629_Lin__release-4.0.0-alpha2.zip",
186183
type: ".zip",
187184
},
188185
],

src/components/button/SplitDownloadButton.jsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,11 @@ function SplitDownloadButton(props) {
7070
<a
7171
onClick={() => handleDownloadButtonClick(releaseData[0])}
7272
href={releaseData[0].browser_download_url}
73-
className="flex items-center gap-3 h-10 pl-4 pr-3 rounded-l-md rounded-bl-md bg-blue-700 hover:bg-blue-600"
73+
aria-label={`Download ${kind} for ${OS}`}
74+
className="flex items-center gap-3 h-10 pl-4 pr-3 rounded-l-md rounded-bl-md bg-blue-700 hover:bg-blue-600"
7475
>
7576
<img src={useLogo(OS)} className="w-4 fill-white" />
76-
Download {kind} for {OS}
77+
Download for {OS}
7778
</a>
7879
<button
7980
onClick={() => handleDropdownButtonClick()}
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
---
2+
3+
---
4+
5+
<div class="mt-6">
6+
<p>
7+
The purpose of this alpha build is to test the core features of Audacity 4
8+
on a wide selection of hardware and operating systems.
9+
</p>
10+
<p class="mt-2">
11+
Alpha 2 contains further work to bring Audacity 4 to feature parity with
12+
Audacity 3, as well as important bug fixes.
13+
</p>
14+
<p class="mt-2">
15+
If you experience severe issues or crashes, please file an issue on GitHub
16+
(requires a free GitHub account).
17+
</p>
18+
<ul class="py-2 list-none">
19+
<li>
20+
<a href="https://github.com/audacity/audacity/issues" class="hyperlink">
21+
GitHub issues
22+
</a>
23+
</li>
24+
<li>
25+
<a href="https://forum.audacityteam.org/c/au4/64" class="hyperlink">
26+
Audacity forum
27+
</a>
28+
</li>
29+
<li>
30+
<a href="https://discord.gg/audacity" class="hyperlink">
31+
Audacity Discord
32+
</a>
33+
</li>
34+
</ul>
35+
36+
<h2 class="mt-6 text-2xl">Key areas to cover</h2>
37+
<ul class="list-disc mt-2 ml-6">
38+
<li>Recording and playback reliability</li>
39+
<li>Editing audio with the new clip handles and grouping</li>
40+
<li>Applying destructive and real-time effects</li>
41+
<li>Exporting audio files</li>
42+
<li>Saving and recalling custom Workspaces</li>
43+
</ul>
44+
45+
<h3 class="mt-2">Compatibility reminder ⚠️</h3>
46+
<p class="mt-2">
47+
Projects saved in Audacity 4 aren't backwards compatible. Duplicate anything
48+
important before opening it in this build.
49+
</p>
50+
51+
<h3 class="mt-6 text-xl">Notable changes since alpha-1</h3>
52+
<ul class="list-disc mt-2 ml-6 space-y-1">
53+
<li>
54+
Allow track range selection using shift enter by @embarc-gabriel in
55+
<a
56+
href="https://github.com/audacity/audacity/pull/9600"
57+
class="hyperlink"
58+
>
59+
https://github.com/audacity/audacity/pull/9600
60+
</a>
61+
</li>
62+
<li>
63+
Record anywhere by @grliszas14 in
64+
<a
65+
href="https://github.com/audacity/audacity/pull/9540"
66+
class="hyperlink"
67+
>
68+
https://github.com/audacity/audacity/pull/9540
69+
</a>
70+
</li>
71+
<li>
72+
Export loop region by @grliszas14 in
73+
<a
74+
href="https://github.com/audacity/audacity/pull/9489"
75+
class="hyperlink"
76+
>
77+
https://github.com/audacity/audacity/pull/9489
78+
</a>
79+
</li>
80+
<li>
81+
Paste behaviour preferences by @luapmartin in
82+
<a
83+
href="https://github.com/audacity/audacity/pull/9612"
84+
class="hyperlink"
85+
>
86+
https://github.com/audacity/audacity/pull/9612
87+
</a>
88+
</li>
89+
<li>
90+
Add setting to configure whether clicking on ruler should trigger playback
91+
by @embarc-gabriel in
92+
<a
93+
href="https://github.com/audacity/audacity/pull/9707"
94+
class="hyperlink"
95+
>
96+
https://github.com/audacity/audacity/pull/9707
97+
</a>
98+
</li>
99+
<li>
100+
Create loop region only when control key is pressed by @embarc-gabriel in
101+
<a
102+
href="https://github.com/audacity/audacity/pull/9712"
103+
class="hyperlink"
104+
>
105+
https://github.com/audacity/audacity/pull/9712
106+
</a>
107+
</li>
108+
<li>
109+
Smoother playhead by @saintmatthieu in
110+
<a
111+
href="https://github.com/audacity/audacity/pull/9613"
112+
class="hyperlink"
113+
>
114+
https://github.com/audacity/audacity/pull/9613
115+
</a>
116+
</li>
117+
</ul>
118+
119+
<div>
120+
<h2 class="mt-4 text-2xl">Share your feedback</h2>
121+
<p class="mt-2">
122+
We're eager to hear how Alpha 2 lands for you. Please let us know what you
123+
think using the channels below:
124+
</p>
125+
<ul class="py-2 list-none">
126+
<li class="hyperlink">
127+
<a href="https://forum.audacityteam.org/c/au4/64">Audacity Forum</a>
128+
</li>
129+
<li class="hyperlink">
130+
<a href="https://discord.gg/audacity">Audacity Discord</a>
131+
</li>
132+
<li>
133+
<a href="https://github.com/audacity/audacity/issues" class="hyperlink">
134+
GitHub issues
135+
</a>
136+
</li>
137+
</ul>
138+
</div>
139+
</div>

src/pages/download.astro

Lines changed: 73 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
11
---
2-
import BaseLayout from "../layouts/BaseLayout.astro";
3-
import OperatingSystemCard from "../components/card/OperatingSystemCard";
4-
import "../styles/icons.css";
52
import {
63
audacityReleases,
74
hasDownloadAssets,
85
preReleaseList,
96
type PreReleaseEntry,
107
} from "../assets/data/audacityReleases";
118
import ChecksumAccordion from "../components/accordion/ChecksumAccordion";
9+
import OperatingSystemCard from "../components/card/OperatingSystemCard";
10+
import BaseLayout from "../layouts/BaseLayout.astro";
11+
import "../styles/icons.css";
1212
1313
const { version } = audacityReleases;
1414
const sourceDownloads = audacityReleases.src ?? [];
1515
const primarySourceDownload = sourceDownloads[0] ?? null;
1616
const activeDownloadEntries = preReleaseList.filter(
17-
(entry) => entry.isActive && hasDownloadAssets(entry.downloads),
17+
(entry) => entry.isActive && hasDownloadAssets(entry.downloads)
1818
);
1919
const hasDownloadCampaigns = activeDownloadEntries.length > 0;
2020
2121
const formatCampaignLinkLabel = (
2222
entry: PreReleaseEntry,
2323
platform: string,
24-
buildName?: string,
24+
buildName?: string
2525
) =>
2626
`${entry.downloads.version} for ${platform}${
2727
buildName ? ` (${buildName})` : ""
@@ -74,77 +74,84 @@ const formatCampaignLinkLabel = (
7474
</div>
7575
</section>
7676
<aside class="col-start-2 col-span-10 sm:col-start-8 sm:col-span-3">
77-
{hasDownloadCampaigns && (
78-
<div>
79-
<h2 class="text-sm uppercase font-normal text-gray-600">
80-
Pre-release builds
81-
</h2>
82-
<div class="flex flex-col gap-6 mt-2">
83-
{activeDownloadEntries.map((entry) => {
84-
const downloads = entry.downloads;
85-
const windowsBuilds = downloads.win ?? [];
86-
const macBuilds = downloads.mac ?? [];
87-
const linuxBuilds = downloads.lin ?? [];
88-
const versionLabel = downloads.version;
77+
{
78+
hasDownloadCampaigns && (
79+
<div>
80+
<h2 class="text-sm uppercase font-normal text-gray-600">
81+
Pre-release builds
82+
</h2>
83+
<div class="flex flex-col gap-6 mt-2">
84+
{activeDownloadEntries.map((entry) => {
85+
const downloads = entry.downloads;
86+
const windowsBuilds = downloads.win ?? [];
87+
const macBuilds = downloads.mac ?? [];
88+
const linuxBuilds = downloads.lin ?? [];
89+
const versionLabel = downloads.version;
8990

90-
return (
91-
<div class="flex flex-col gap-3">
92-
<h3 class="text-base font-semibold text-gray-900">
93-
{versionLabel}
94-
</h3>
95-
<p class="text-sm text-gray-700">
96-
{entry.summary}
97-
</p>
98-
<ul class="flex flex-col gap-2 text-sm">
99-
{
100-
windowsBuilds.map((build) => (
91+
return (
92+
<div class="flex flex-col gap-3">
93+
<h3 class="text-base font-semibold text-gray-900">
94+
{versionLabel}
95+
</h3>
96+
<p class="text-sm text-gray-700">{entry.summary}</p>
97+
{entry.id === "alpha" && <au4alpha2 />}
98+
<ul class="flex flex-col gap-2 text-sm">
99+
{windowsBuilds.map((build) => (
101100
<li>
102101
<a
103102
class="hyperlink"
104103
href={build.browser_download_url}
105104
>
106-
{formatCampaignLinkLabel(entry, "Windows", build.name)}
105+
{formatCampaignLinkLabel(
106+
entry,
107+
"Windows",
108+
build.name
109+
)}
107110
</a>
108111
</li>
109-
))
110-
}
111-
{
112-
macBuilds.map((build) => (
112+
))}
113+
{macBuilds.map((build) => (
113114
<li>
114115
<a
115116
class="hyperlink"
116117
href={build.browser_download_url}
117118
>
118-
{formatCampaignLinkLabel(entry, "macOS", build.name)}
119+
{formatCampaignLinkLabel(
120+
entry,
121+
"macOS",
122+
build.name
123+
)}
119124
</a>
120125
</li>
121-
))
122-
}
123-
{
124-
linuxBuilds.map((build) => (
126+
))}
127+
{linuxBuilds.map((build) => (
125128
<li>
126129
<a
127130
class="hyperlink"
128131
href={build.browser_download_url}
129132
>
130-
{formatCampaignLinkLabel(entry, "Linux", build.name)}
133+
{formatCampaignLinkLabel(
134+
entry,
135+
"Linux",
136+
build.name
137+
)}
131138
</a>
132139
</li>
133-
))
134-
}
135-
</ul>
136-
<div class="flex items-center gap-1">
137-
<a href={entry.pageHref} class="hyperlink text-sm">
138-
{`Learn more about ${versionLabel}`}
139-
</a>
140-
<span class="align-middle icon icon-share text-blue-600"></span>
140+
))}
141+
</ul>
142+
<div class="flex items-center gap-1">
143+
<a href={entry.pageHref} class="hyperlink text-sm">
144+
{`Learn more about ${versionLabel}`}
145+
</a>
146+
<span class="align-middle icon icon-share text-blue-600" />
147+
</div>
141148
</div>
142-
</div>
143-
);
144-
})}
149+
);
150+
})}
151+
</div>
145152
</div>
146-
</div>
147-
)}
153+
)
154+
}
148155
<h2 class="text-sm uppercase font-normal text-gray-600 mt-10">
149156
Additional resources
150157
</h2>
@@ -176,18 +183,20 @@ const formatCampaignLinkLabel = (
176183
<h3 class="additional-resource-heading">Source code</h3>
177184
<div class="flex flex-col gap-2">
178185
<!-- TODO - Ensure accordions are included in the tab hierarchy -->
179-
{primarySourceDownload ? (
180-
<ChecksumAccordion
181-
title={primarySourceDownload.type}
182-
downloadUrl={primarySourceDownload.browser_download_url}
183-
checksum={primarySourceDownload.checksum}
184-
client:load
185-
/>
186-
) : (
187-
<p class="text-sm text-gray-700">
188-
Source code packages are not available right now.
189-
</p>
190-
)}
186+
{
187+
primarySourceDownload ? (
188+
<ChecksumAccordion
189+
title={primarySourceDownload.type}
190+
downloadUrl={primarySourceDownload.browser_download_url}
191+
checksum={primarySourceDownload.checksum}
192+
client:load
193+
/>
194+
) : (
195+
<p class="text-sm text-gray-700">
196+
Source code packages are not available right now.
197+
</p>
198+
)
199+
}
191200
</div>
192201
</div>
193202

0 commit comments

Comments
 (0)