Commit graph

537 commits

Author SHA1 Message Date
Darcy Wong
5bfb93e618 chore(common): Update KEYMAN_VERSION_UNICODE to 16.0.0 2024-09-11 09:33:30 +07:00
Marc Durdin
f3461b3307 chore(windows): fix typo in environment.inc.sh
Co-authored-by: 58423624+rc-swag@users.noreply.github.com
2024-08-26 12:59:57 +07:00
Marc Durdin
9a8b6d1279 chore(windows): remove remaining unused Makefiles
Fixes: #12247
2024-08-23 18:12:06 +02:00
Marc Durdin
b0bd95d276 chore(common): allow build agents to automatically select emsdk version
The build agents will now automatically install and activate the
Emscripten version found in minimum-versions.inc.sh when configuring
WASM projects. For developer machines, this behaviour can be enabled by
setting the environment variable `KEYMAN_USE_EMSDK` (recommended).

This will be back-ported to 17.0 so that we can ensure that all builds
use a consistent Emscripten version.
2024-08-21 15:02:18 +02:00
dependabot[bot]
6fad148466
chore(deps): bump semver from 7.5.4 to 7.6.0
Bumps [semver](https://github.com/npm/node-semver) from 7.5.4 to 7.6.0.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v7.5.4...v7.6.0)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-14 11:22:58 +00:00
Marc Durdin
86fd36a713
Merge pull request #12117 from keymanapp/chore/developer/build-ci-linux-mac
chore(developer): start building Developer on linux,mac
2024-08-09 18:57:38 +10:00
Marc Durdin
52288e247b chore(developer): add build triggers for Linux, macOS 2024-08-08 05:25:25 +07:00
Marc Durdin
57d4aeef97 feat(common): add top-level build.sh
This top-level builder script will build as many projects as are
possible to build on the current platform. For example, iOS and macOS
projects can only be built on macOS; Windows and parts of Developer can
only be built on Windows.

Relates-to: #6268
2024-08-07 10:46:39 +07:00
Marc Durdin
67cff9c878 chore(common): sort bash arrays before asserts in unit tests 2024-08-07 10:09:05 +07:00
Marc Durdin
118a947882 chore(common): add support for build target platform exclusions
Add `builder_describe_platform` function to builder.inc.sh, associated
documentation and unit test, and use it in Developer and Common build
scripts.

Relates-to: #11755
2024-08-07 09:25:56 +07:00
Marc Durdin
5abb28e29b chore(common): add data versions to minimum-versions.inc.sh
This adds references to various data sources such as Unicode. At
present, this is informational only, not used by any scripts, but the
intent is that in the future we reference this for any scripted data
updates.
2024-08-06 13:26:39 +07:00
Marc Durdin
86d0224d7a docs(common): minimum versions 2024-08-01 06:20:46 +07:00
Marc Durdin
12ee391895 chore(common): use node v22.5.1 2024-08-01 05:10:41 +07:00
Marc Durdin
fc4df037bb chore(common): use nvm to select version of node for builds
Used by default only on build agents. See docs/build/node.md and
resources/build/_builder_nvm.sh for documentation of this change.

Fixes: #11376
2024-08-01 05:09:08 +07:00
Joshua A. Horton
d07fa7e953 chore(common): eliminate ts-node ref from most subpackages 2024-06-10 10:07:58 +07:00
Joshua A. Horton
e527317d3a fix(common): remove subpackge entries for older TS version 2024-06-10 09:14:03 +07:00
Eberhard Beilharz
0de84b69c1
fix(common): output correct parameter values
Previously with the right number of parameters that take values and the
right order it could happen that a parameter value got replaced by an
action when the script output the parameters. This change fixes this.

Fixes: #11676
2024-06-04 16:34:03 +02:00
Marc Durdin
02595229b2
Merge pull request #11461 from keymanapp/chore/windows/11316-build.sh
chore(windows): move from Makefile to build.sh
2024-05-23 14:23:05 +07:00
Marc Durdin
1e66b6ed0e
Merge pull request #11421 from keymanapp/chore/developer/11317-build.sh
chore(developer): build.sh for developer
2024-05-23 14:22:54 +07:00
Eberhard Beilharz
2dfec17102
chore(linux): Trigger GHA packaging for stable builds
(cherry picked from commit 3b3fef0e96)
2024-05-21 17:04:14 +02:00
Marc Durdin
d43b9316dd fix(windows): use run_in_vs_env to ensure signtool.exe is on path
The build agents use a fixed location for signtool.exe, but this is not
the case for other devs, so we need to grab our VS environment in order
to locate it.
2024-05-21 14:12:44 +07:00
Marc Durdin
8b2070c339 chore(developer): minor cleanup on scripts
Additional shared script resources for Developer and Windows,
refactor of a code signing function, refactor of clean step in build.sh.
2024-05-20 06:35:11 +07:00
Marc Durdin
8b6d6b0618 chore(developer): cleanup on build scripts
A round of cleanup and consistency for Developer build scripts.
2024-05-20 06:35:05 +07:00
Marc Durdin
4e679dcab4 chore(developer): SIGNTIME env var support
Also some more script cleanup and ensure common/core packages are also
published.
2024-05-20 06:35:02 +07:00
Marc Durdin
ee0fc0ce14 chore(developer): cleanup npm publish
Use a new flag `--npm-publish` in conjunction with `publish` action,
so that the default will always be to `npm pack` if the new flag is not
specified. This flag is also guarded in the actual npm publish code to
ensure that it can only run in the appropriate CI alpha/beta/stable
environment, and not in local or test.

This then also removes the separate `pack` action.

Also removes legacy boilerplate from a number of build scripts.
2024-05-20 06:34:57 +07:00
Marc Durdin
fa57d5c674 chore(developer): final work on build.sh for developer
Now builds from a clean repo:

  developer/src/build.sh configure build test publish

* Splits kmbrowserhost into kmdbrowserhost for Developer; this means
  that Developer Browser Host now inherits the Developer settings rather
  than the Keyman for Windows settings, and simplifies distribution and
  management. The only difference between the two is in the startup code
  so this seems like a good split.

* Cleanup of various build scripts and dependencies.
2024-05-20 06:34:53 +07:00
Marc Durdin
41df6d1cd7 chore(developer): refactor remaining build scripts
This finishes the changes for all build infrastructure for Keyman
Developer to use build.sh.
2024-05-20 06:34:50 +07:00
Marc Durdin
86c62ff36c chore(developer): transition remaining projects to build.sh
Relates to #11317.

All projects now have a build.sh. Still need to work on inst/, remove
old Makefiles, and update CI.
2024-05-20 06:33:51 +07:00
Marc Durdin
7ce07c71be chore(developer): move to build.sh for setup
Relates to #11317.

Initial baby steps for configuring build environment for Delphi and VC++
within build.sh without needing to call out to batch files.

Proof-of-concept build.sh for setup.dpr.
2024-05-20 06:33:48 +07:00
Darcy Wong
c9cbc851b7
Merge pull request #11399 from keymanapp/chore/common/min-ver-sh
chore(common): Auto-generate minimum-versions.md from min-ver.sh
2024-05-17 11:22:25 +07:00
Joshua Horton
d6ea20f520
Merge pull request #11319 from keymanapp/chore/web/consistent-npm-types
chore(web): updates most @types/node dependencies, makes them consistent 🏃
2024-05-15 14:10:35 +07:00
Marc Durdin
1643c1d424 chore: Merge branch 'master' into chore/merge-beta-into-master 2024-05-15 10:15:12 +07:00
Marc Durdin
9c273cfbc9 chore: stable-17.0 2024-05-15 10:08:03 +07:00
Marc Durdin
b7c3d65702 chore(common): update builder docs 2024-05-13 15:20:43 +07:00
Darcy Wong
a30807e3aa chore(common): Move template to /docs/ too 2024-05-13 11:36:23 +07:00
Darcy Wong
439dbeb7d6 chore(common): Move minimum-versions.md to /docs/ 2024-05-13 11:30:26 +07:00
Darcy Wong
947e931e55 chore(common): Rename min-ver.sh to publish-minimum-versions.sh 2024-05-13 10:23:01 +07:00
Marc Durdin
d7cafae5ed feat(common): improve builder parameter passing for child and dep builds
Fixes #11408.
Fixes #11394.
2024-05-09 13:54:17 +07:00
Darcy Wong
90a37de5fe fix: generate table and append to minimum-versions.md.in 2024-05-09 08:34:42 +07:00
Darcy Wong
15a0e36372 chore(common): Tweak for loop 2024-05-09 08:30:16 +07:00
Darcy Wong
326090b561 chore(common): Generate min-ver.md 2024-05-09 08:30:15 +07:00
Darcy Wong
134ecbe608 chore(common): List documentation to update 2024-05-09 08:30:15 +07:00
Darcy Wong
f799adc36c chore(common): Add minimum-versions.md 2024-05-09 08:30:15 +07:00
Eberhard Beilharz
4142187f21
chore(common): Rename variable 2024-05-08 10:56:20 +02:00
Eberhard Beilharz
096a011faf
chore(common): Apply suggestion from code review 2024-05-08 10:55:08 +02:00
Eberhard Beilharz
d00ef82369
chore(common): Apply suggestions from code review 2024-05-07 16:05:49 +02:00
Eberhard Beilharz
29952f272d
Update resources/build/minimum-versions.inc.sh
Co-authored-by: Joshua Horton <joshua_horton@sil.org>
2024-05-07 15:57:41 +02:00
Joshua A. Horton
01d0019d86 chore(web): removes package.json references to old @npm/types versions 2024-05-07 14:38:41 +07:00
Eberhard Beilharz
6f7acf8ace
chore(common): Add minimum-versions.inc.sh
This file contains the minimal required versions as discussed for
Keyman 18.

Implements #11371.
2024-05-06 17:19:19 +02:00
Marc Durdin
29f6204e45 chore(common): rename build-utils.md to builder.md 2024-05-03 05:58:06 +07:00