Compare commits

..

1 Commits

Author SHA1 Message Date
dependabot[bot]
91c4ba6239 build(deps): Bump svenstaro/upload-release-action from 2.9.0 to 2.11.2
Bumps [svenstaro/upload-release-action](https://github.com/svenstaro/upload-release-action) from 2.9.0 to 2.11.2.
- [Release notes](https://github.com/svenstaro/upload-release-action/releases)
- [Changelog](https://github.com/svenstaro/upload-release-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/svenstaro/upload-release-action/compare/2.9.0...2.11.2)

---
updated-dependencies:
- dependency-name: svenstaro/upload-release-action
  dependency-version: 2.11.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 22:35:49 +00:00
22 changed files with 36 additions and 112 deletions

View File

@@ -317,7 +317,7 @@ jobs:
if not exist "${{ matrix.config.working-directory }}" mklink /d "${{ matrix.config.working-directory }}" "C:\actions-runner\_work\arduino-ide\arduino-ide"
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Install Node.js
@@ -441,10 +441,10 @@ jobs:
echo "CHANNEL_FILES_PATH=${{ runner.temp }}/channel-files" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Download staged-for-merge channel file artifacts
uses: actions/download-artifact@v5
uses: actions/download-artifact@v4
with:
merge-multiple: true
path: ${{ env.CHANNEL_FILES_PATH }}
@@ -513,7 +513,7 @@ jobs:
steps:
- name: Download job transfer artifact that contains ${{ matrix.artifact.name }} tester build
uses: actions/download-artifact@v5
uses: actions/download-artifact@v4
with:
name: ${{ env.JOB_TRANSFER_ARTIFACT_PREFIX }}${{ matrix.artifact.job-transfer-artifact-suffix }}
path: ${{ env.BUILD_ARTIFACTS_FOLDER }}
@@ -533,7 +533,7 @@ jobs:
BODY: ${{ steps.changelog.outputs.BODY }}
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v4
with:
fetch-depth: 0 # To fetch all history for all branches and tags.
@@ -600,7 +600,7 @@ jobs:
steps:
- name: Download all job transfer artifacts
uses: actions/download-artifact@v5
uses: actions/download-artifact@v4
with:
merge-multiple: true
path: ${{ env.ARTIFACTS_FOLDER }}
@@ -643,7 +643,7 @@ jobs:
steps:
- name: Download all job transfer artifacts
uses: actions/download-artifact@v5
uses: actions/download-artifact@v4
with:
merge-multiple: true
path: ${{ env.ARTIFACTS_FOLDER }}
@@ -655,7 +655,7 @@ jobs:
echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
- name: Publish Release [GitHub]
uses: svenstaro/upload-release-action@2.9.0
uses: svenstaro/upload-release-action@2.11.2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
release_name: ${{ steps.tag_name.outputs.TAG_NAME }}

View File

@@ -40,7 +40,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Build and push to local registry
uses: docker/build-push-action@v6

View File

@@ -56,7 +56,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Install Node.js 18.17
uses: actions/setup-node@v4

View File

@@ -65,7 +65,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4

View File

@@ -64,7 +64,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4

View File

@@ -21,7 +21,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4

View File

@@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Install Node.js 18.17
uses: actions/setup-node@v4

View File

@@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Install Node.js 18.17
uses: actions/setup-node@v4

View File

@@ -43,7 +43,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Log in to the Container registry
uses: docker/login-action@v3

View File

@@ -27,7 +27,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Download JSON schema for labels configuration file
id: download-schema
@@ -106,10 +106,10 @@ jobs:
echo "flag=--dry-run" >> $GITHUB_OUTPUT
- name: Checkout repository
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Download configuration file artifacts
uses: actions/download-artifact@v5
uses: actions/download-artifact@v4
with:
merge-multiple: true
pattern: ${{ env.CONFIGURATIONS_ARTIFACT_PREFIX }}*

View File

@@ -82,7 +82,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4

View File

@@ -16,7 +16,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4

View File

@@ -46,9 +46,9 @@ See [**the contributor guide**](docs/CONTRIBUTING.md#contributor-guide) for more
See the [**development guide**](docs/development.md) for a technical overview of the application and instructions for building the code.
### Support the project
## Donations
This open source code was written by the Arduino team and is maintained on a daily basis with the help of the community. We invest a considerable amount of time in development, testing and optimization. Please consider [buying original Arduino boards](https://store.arduino.cc/) to support our work on the project.
This open source code was written by the Arduino team and is maintained on a daily basis with the help of the community. We invest a considerable amount of time in development, testing and optimization. Please consider [donating](https://www.arduino.cc/en/donate/) or [sponsoring](https://github.com/sponsors/arduino) to support our work, as well as [buying original Arduino boards](https://store.arduino.cc/) which is the best way to make sure our effort can continue in the long term.
## License

View File

@@ -44,7 +44,6 @@ export class ConfigServiceClient implements FrontendApplicationContribution {
}
onStart(): void {
console.log('just a test');
this.notificationCenter.onConfigDidChange((config) => this.use(config));
}

View File

@@ -67,7 +67,3 @@ export function truncateLines(
}
return [lines, charCount];
}
export function joinLines(lines: Line[]): string {
return lines.map((line: Line) => line.message).join('');
}

View File

@@ -52,9 +52,6 @@ export namespace SerialMonitor {
},
'vscode/output.contribution/clearOutput.label'
);
export const COPY_OUTPUT = {
id: 'serial-monitor-copy-output',
};
}
}
@@ -152,12 +149,6 @@ export class MonitorViewContribution
'Clear Output'
),
});
registry.registerItem({
id: SerialMonitor.Commands.COPY_OUTPUT.id,
command: SerialMonitor.Commands.COPY_OUTPUT.id,
icon: codicon('copy'),
tooltip: nls.localize('arduino/serial/copyOutput', 'Copy Output'),
});
}
override registerCommands(commands: CommandRegistry): void {
@@ -170,15 +161,6 @@ export class MonitorViewContribution
}
},
});
commands.registerCommand(SerialMonitor.Commands.COPY_OUTPUT, {
isEnabled: (widget) => widget instanceof MonitorWidget,
isVisible: (widget) => widget instanceof MonitorWidget,
execute: (widget) => {
if (widget instanceof MonitorWidget) {
widget.copyOutput();
}
},
});
if (this.toggleCommand) {
commands.registerCommand(this.toggleCommand, {
execute: () => this.toggle(),

View File

@@ -28,7 +28,6 @@ import {
import { MonitorModel } from '../../monitor-model';
import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state';
import { serialMonitorWidgetLabel } from '../../../common/nls';
import { ClipboardService } from '@theia/core/lib/browser/clipboard-service';
@injectable()
export class MonitorWidget extends ReactWidget {
@@ -48,7 +47,6 @@ export class MonitorWidget extends ReactWidget {
*/
protected closing = false;
protected readonly clearOutputEmitter = new Emitter<void>();
protected readonly copyOutputEmitter = new Emitter<void>();
@inject(MonitorModel)
private readonly monitorModel: MonitorModel;
@@ -58,8 +56,6 @@ export class MonitorWidget extends ReactWidget {
private readonly boardsServiceProvider: BoardsServiceProvider;
@inject(FrontendApplicationStateService)
private readonly appStateService: FrontendApplicationStateService;
@inject(ClipboardService)
private readonly clipboardService: ClipboardService;
private readonly toDisposeOnReset: DisposableCollection;
@@ -107,10 +103,6 @@ export class MonitorWidget extends ReactWidget {
this.update();
}
copyOutput(): void {
this.copyOutputEmitter.fire();
}
override dispose(): void {
this.toDisposeOnReset.dispose();
super.dispose();
@@ -255,8 +247,6 @@ export class MonitorWidget extends ReactWidget {
monitorModel={this.monitorModel}
monitorManagerProxy={this.monitorManagerProxy}
clearConsoleEvent={this.clearOutputEmitter.event}
copyOutputEvent={this.copyOutputEmitter.event}
clipboardService={this.clipboardService}
height={Math.floor(this.widgetHeight - 50)}
/>
</div>

View File

@@ -3,10 +3,9 @@ import { Event } from '@theia/core/lib/common/event';
import { DisposableCollection } from '@theia/core/lib/common/disposable';
import { areEqual, FixedSizeList as List } from 'react-window';
import dateFormat from 'dateformat';
import { messagesToLines, truncateLines, joinLines } from './monitor-utils';
import { messagesToLines, truncateLines } from './monitor-utils';
import { MonitorManagerProxyClient } from '../../../common/protocol';
import { MonitorModel } from '../../monitor-model';
import { ClipboardService } from '@theia/core/lib/browser/clipboard-service';
export type Line = { message: string; timestamp?: Date; lineLen: number };
@@ -75,9 +74,6 @@ export class SerialMonitorOutput extends React.Component<
this.props.clearConsoleEvent(() =>
this.setState({ lines: [], charCount: 0 })
),
this.props.copyOutputEvent(() =>
this.props.clipboardService.writeText(joinLines(this.state.lines))
),
this.props.monitorModel.onChange(({ property }) => {
if (property === 'timestamp') {
const { timestamp } = this.props.monitorModel;
@@ -134,8 +130,6 @@ export namespace SerialMonitorOutput {
readonly monitorModel: MonitorModel;
readonly monitorManagerProxy: MonitorManagerProxyClient;
readonly clearConsoleEvent: Event<void>;
readonly copyOutputEvent: Event<void>;
readonly clipboardService: ClipboardService;
readonly height: number;
}

View File

@@ -2,7 +2,6 @@ import { expect } from 'chai';
import {
messagesToLines,
truncateLines,
joinLines,
} from '../../browser/serial/monitor/monitor-utils';
import { Line } from '../../browser/serial/monitor/serial-monitor-send-output';
import { set, reset } from 'mockdate';
@@ -16,7 +15,6 @@ type TestLine = {
charCount: number;
maxCharacters?: number;
};
expectedJoined?: string;
};
const date = new Date();
@@ -24,7 +22,6 @@ const testLines: TestLine[] = [
{
messages: ['Hello'],
expected: { lines: [{ message: 'Hello', lineLen: 5 }], charCount: 5 },
expectedJoined: 'Hello',
},
{
messages: ['Hello', 'Dog!'],
@@ -39,7 +36,6 @@ const testLines: TestLine[] = [
],
charCount: 10,
},
expectedJoined: 'Hello\nDog!'
},
{
messages: ['Dog!'],
@@ -71,7 +67,6 @@ const testLines: TestLine[] = [
{ message: "You're a good boy!", lineLen: 8 },
],
},
expectedJoined: "Hello Dog!\n Who's a good boy?\nYou're a good boy!",
},
{
messages: ['boy?\n', "You're a good boy!"],
@@ -121,7 +116,6 @@ const testLines: TestLine[] = [
{ message: 'Yo', lineLen: 2 },
],
},
expectedJoined: "Hello Dog!\nWho's a good boy?\nYo",
},
];
@@ -171,10 +165,6 @@ describe('Monitor Utils', () => {
});
expect(totalCharCount).to.equal(charCount);
}
if (testLine.expectedJoined) {
const joined_str = joinLines(testLine.expected.lines);
expect(joined_str).to.equal(testLine.expectedJoined);
}
});
});
});

View File

@@ -6,20 +6,22 @@ Thanks for your interest in contributing to this project!
There are several ways you can get involved:
| Type of contribution | Contribution method |
| ----------------------------------------- | ---------------------------------------------------------------- |
| - Support<br/>- Question<br/>- Discussion | Post on the [**Arduino Forum**][forum] |
| - Bug report<br/>- Feature request | Issue report (see the guide [**here**][issues]) |
| Testing | Beta testing, PR review (see the guide [**here**][beta-testing]) |
| Translation | See the guide [**here**][translate] |
| - Bug fix<br/>- Enhancement | Pull request (see the guide [**here**][prs]) |
| Monetary | [Buy official products][store] |
| Type of contribution | Contribution method |
| ----------------------------------------- | -------------------------------------------------------------------------------- |
| - Support<br/>- Question<br/>- Discussion | Post on the [**Arduino Forum**][forum] |
| - Bug report<br/>- Feature request | Issue report (see the guide [**here**][issues]) |
| Testing | Beta testing, PR review (see the guide [**here**][beta-testing]) |
| Translation | See the guide [**here**][translate] |
| - Bug fix<br/>- Enhancement | Pull request (see the guide [**here**][prs]) |
| Monetary | - [Donate][donate]<br/>- [Sponsor][sponsor]<br/>- [Buy official products][store] |
[forum]: https://forum.arduino.cc
[issues]: contributor-guide/issues.md#issue-report-guide
[beta-testing]: contributor-guide/beta-testing.md#beta-testing-guide
[translate]: contributor-guide/translation.md#translator-guide
[prs]: contributor-guide/pull-requests.md#pull-request-guide
[donate]: https://www.arduino.cc/en/donate/
[sponsor]: https://github.com/sponsors/arduino
[store]: https://store.arduino.cc
## Resources

View File

@@ -1,41 +1,13 @@
# Translator Guide
The text of the Arduino IDE user interface is translated into several languages. The language can be selected in the dialog opened via **File > Preferences** in the Arduino IDE menus (**Arduino IDE > Preferences** for macOS users).
The text of the Arduino IDE interface is translated into several languages. The language can be selected in the dialog opened via **File > Preferences** in the Arduino IDE menus (**Arduino IDE > Preferences** for macOS users).
Translating text and improving on existing translations is a valuable contribution to the project, helping make Arduino accessible to everyone.
The translations for the text found in Arduino IDE come from several sources:
The translations for the text found in the Arduino IDE come from several sources:
## Arduino IDE Text
The text of the Arduino IDE application can be translated to the following languages:
- čeština (Czech)
- Deutsch (German)
- Dutch
- español (Spanish)
- français (French)
- italiano (Italian)
- magyar (Hungarian)
- polski (Polish)
- português (Portuguese)
- Türkçe (Turkish)
- български (Bulgarian)
- русский (Russian)
- українська (Ukrainian)
- 한국어 (Korean)
- 中文(简体) (Chinese Simplified)
- 中文(繁體) (Chinese Traditional)
- 日本語 (Japanese)
---
⚠ Unfortunately the 3rd party localization system used by the Arduino IDE application imposes a technical limitation to that set of languages. For this reason, we are unable to add support to Arduino IDE for additional languages (see [`arduino/arduino-ide#1447`](https://github.com/arduino/arduino-ide/issues/1447) for details).
There is no technical limitation on the set of languages to which **Arduino CLI** can be translated. If you would like to contribute translations for a language not on the above list, you are welcome to [contribute to the **Arduino CLI** project](#arduino-cli-text).
---
Translations of Arduino IDE's text is done in the "**Arduino IDE 2.0**" project on the **Transifex** localization platform:
https://explore.transifex.com/arduino-1/ide2/

View File

@@ -435,7 +435,6 @@
"autoscroll": "Autoscroll",
"carriageReturn": "Carriage Return",
"connecting": "Connecting to '{0}' on '{1}'...",
"copyOutput": "Copy Output",
"message": "Message (Enter to send message to '{0}' on '{1}')",
"newLine": "New Line",
"newLineCarriageReturn": "Both NL & CR",