Commit graph

447 commits

Author SHA1 Message Date
Marc Durdin
4f44ac6e2a fix: path for ESM increment-version, and exit code
* Fixes the path for the increment-version module
* Uses exit code 50 instead of 1 to indicate 'success, but no change',
  so that low-value error exit codes as used by node.js don't
  indavertently continue the build
2023-10-11 09:39:03 +07:00
Marc Durdin
e511e3910e
Merge pull request #9731 from keymanapp/chore/builder-inc-sh-cleanup
chore: clean up a few minor discrepancies in builder.inc.sh
2023-10-11 13:09:36 +11:00
Marc Durdin
b33f476c8d chore: clean up a few minor discrepancies in builder.inc.sh
- Some uses of `KEYMAN_ROOT` (not cross-repo compatible)
- `set -eu` and `SHLVL` now set there as well
2023-10-10 16:36:24 +07:00
Marc Durdin
6c944cff65 chore: Merge branch 'epic/package-metadata' into chore/merge-master-into-package-metadata 2023-10-06 11:52:13 +07:00
Marc Durdin
d4e4992714 chore(common): cleanup final Typescript non-ESM metadata
Fixes #9262.
2023-10-04 12:55:51 +07:00
Marc Durdin
fbd9a4b5e8 chore(common): convert resources/build/version to ES Modules
Fixes #9677.
2023-10-04 11:50:53 +07:00
Marc Durdin
d99388fc68
Merge branch 'epic/package-metadata' into chore/merge-master-into-package-metadata 2023-09-29 09:31:53 +02:00
Marc Durdin
65d95d39fc
Merge pull request #9535 from keymanapp/feat/developer/eliminate-source-info-files
feat(developer): eliminate source .model_info and .keyboard_info files 🎺
2023-09-28 10:54:08 +02:00
Marc Durdin
cc82a3cc63
Merge pull request #9536 from keymanapp/chore/npm-pack-bundling
chore: workaround npm/cli#3466 when bundling internal deps
2023-09-26 06:36:52 +02:00
Eberhard Beilharz
1e734a47f5
docs(common): Fix documentation for builder_describe_internal_dependency
Fixes #9581.
2023-09-18 18:49:04 +02:00
Eberhard Beilharz
3a042586ab
chore(linux): Exclude environment.sh from build
`environment.sh` is used only on Mac. This change modifies `build.sh`
to generate this file only when building on Mac. It also excludes
`environment.sh` from the Linux source tarball.
2023-09-12 18:25:52 +02:00
Marc Durdin
a0bdb617a0
chore(developer): Apply suggestions from code review
Co-authored-by: Darcy Wong <darcy_wong@sil.org>
2023-09-12 17:15:35 +10:00
Marc Durdin
0d96437cb8 chore: workaround npm/cli#3466 when bundling internal deps
Works around npm/cli#3466 when bundling internal dependencies using the
bundleDependencies package.json property.

This change works in tandem with the npm pack/publish process -- when we
run `developer/src/kmc/build.sh publish` (or `pack`), we end up with
`npm version` stomping on all our package.json files, so the repo is
dirty after this. We need a copy of the top-level package.json before
this stomping happens, in order to get a simple map of the location of
each of our internal dependencies, from the `dependencies` property (it
would be possible to figure this out with a lot more parsing of
our package.json files, but this is simpler).

This means, in future, we should avoid publishing our internal
dependencies such as those under common/ to npm, as they serve no
practical purpose there.
2023-09-01 17:48:35 +04:00
Marc Durdin
d7f73f3078 chore: workaround npm/cli#3466 when bundling internal deps
Works around npm/cli#3466 when bundling internal dependencies using the
bundleDependencies package.json property.

This change works in tandem with the npm pack/publish process -- when we
run `developer/src/kmc/build.sh publish` (or `pack`), we end up with
`npm version` stomping on all our package.json files, so the repo is
dirty after this. We need a copy of the top-level package.json before
this stomping happens, in order to get a simple map of the location of
each of our internal dependencies, from the `dependencies` property (it
would be possible to figure this out with a lot more parsing of
our package.json files, but this is simpler).

This means, in future, we should avoid publishing our internal
dependencies such as those under common/ to npm, as they serve no
practical purpose there.
2023-09-01 20:30:43 +08:00
Eberhard Beilharz
1289a54691
chore(linux): Properly treat test builds with packaging GHA
Previously GHA builds always used the "local" environment. This
change now detects test builds as well as release builds and properly
sets the environment.
2023-08-02 12:12:26 +02:00
Eberhard Beilharz
b8d0777800
chore(linux): Remove package build on Jenkins for Keyman 17 2023-08-01 15:03:47 +02:00
Eberhard Beilharz
b328d82145
Merge pull request #9221 from keymanapp/chore/linux/tests
chore(linux): Trigger Linux integration tests
2023-07-11 10:50:30 +02:00
Marc Durdin
2d8fb8cda9 chore: authenticate github request when triggering test builds 2023-07-10 09:10:04 +07:00
Eberhard Beilharz
94c0681078
chore(linux): Trigger Linux integration tests 2023-07-07 18:46:16 +02:00
dependabot[bot]
7d08b08fb2
chore(deps): bump semver from 7.3.8 to 7.5.2
Bumps [semver](https://github.com/npm/node-semver) from 7.3.8 to 7.5.2.
- [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.3.8...v7.5.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-24 12:37:06 +00:00
Marc Durdin
27ee66b1e8 chore: enable common ci for web 2023-06-20 15:32:26 +07:00
Eberhard Beilharz
e0ec56aa12
fix(linux): Fix creation of markdown help files for Linux
Fixes [help.keyman.com #725](https://github.com/keymanapp/help.keyman.com/issues/725).
2023-06-13 08:41:13 +02:00
Marc Durdin
4b0f4e9c51
chore: Update resources/build/build-utils-ci.inc.sh 2023-05-31 19:12:20 +10:00
Marc Durdin
bb675730a2 fix(common): tweak pack/publish support for npm 9.5.1 and node 18.16.0
The npm version command started failing when we updated to node 18.16.0,
and it looks like it is related to the version numbers. This makes the
pack file mangling idempotent and applies it to all package.json files
in the repository.
2023-05-31 15:59:56 +07:00
Eberhard Beilharz
c61535d56a
fix(android): Fix build-utils.sh 2023-05-25 12:44:03 +02:00
Marc Durdin
97837d2021 feat(common): add builder_run_action shorthand function 2023-05-10 12:50:39 +07:00
Marc Durdin
292886479f
Merge pull request #8698 from keymanapp/chore/common/8693-set-eu-all-build-scripts
chore(common): `set -eu` in build-utils.sh
2023-05-05 13:18:52 +10:00
Marc Durdin
a1326ad47b chore(common): set -eu in build-utils.sh
Enforces -e (abort script on error) and -u (error on unset variable use)
on all scripts that source build-utils.sh. This may result in some
downstream build failures which we'll need to address before merge to
master.
2023-05-02 12:14:05 +07:00
Marc Durdin
8499956754
Update resources/build/test/test.sh 2023-04-29 12:58:39 +10:00
Marc Durdin
5a6caf8508 chore: move set -eu change to #8693 2023-04-28 14:48:30 +07:00
Marc Durdin
9f74e735de chore(common): fixup build scripts 2023-04-28 14:30:52 +07:00
Marc Durdin
74f9276695 chore(common): run common and resources tests
This sets us up to run all common/ and resources/ tests from a single
script, common/build.sh. This test will be run on each platform for all
changes made in common/ or resources/.

Also renamed files and paths for consistency in resources/ and updated
tests accordingly.
2023-04-28 14:07:34 +07:00
Marc Durdin
cb0c39f1aa fix(common): builder - pass deps flags to child scripts 2023-04-24 09:52:22 +07:00
Marc Durdin
57087e4cca
Merge pull request #8587 from keymanapp/fix/common/7310-npm-publish-needs-to-hardcode-dep-versions
fix(common): consolidate npm publishing
2023-04-13 18:08:30 +10:00
Marc Durdin
10a59f789d fix(common): support npm pack and consolidate npm publishing
Fixes #8586.

All npm publish actions in the repository are now run as part of the
Developer release build, hosted at present by kmc, until we setup a
higher-level build script to do it.

Adds a 'pack' action which mirrors 'publish' for all npm packages.

Removes unnecessary dev dependencies of models-templates and
models-wordbreakers from kmc-model.

Web Release build CI step has been updated to check for presence of
.build-builder.
2023-04-12 11:55:31 +07:00
Marc Durdin
8f48c59bdb fix(common): set dependency versions when publishing npm packages
Fixes #7310.
2023-04-12 10:59:16 +07:00
jahorton
ccbc1b3b51 fix(ios): fixes xcode-triggered debug, run builds by defining missing env var 2023-04-11 09:05:50 +07:00
Marc Durdin
27ce5a6f83
Merge pull request #8567 from keymanapp/docs/8542-build-utils-dependency-clarification
docs: clarify dependency meanings in build-utils
2023-04-10 14:16:56 +10:00
Darcy Wong
d2cacd58f3
Merge pull request #8543 from keymanapp/chore/android/java-11
chore(android): Update projects to use Java 11
2023-04-10 09:20:02 +07:00
Marc Durdin
95b7cb62b4 docs: clarify dependency meanings in build-utils
Relates to #8542.
2023-04-10 08:57:48 +07:00
Darcy Wong
c7e65409a3 fix(android): Move set_java_home to build-utils 2023-03-31 13:07:35 +07:00
Marc Durdin
2a871c8165 chore(developer): publish all required npm modules 2023-03-27 11:36:21 +07:00
Marc Durdin
062b947363 chore: Merge branch 'feature-kmcompx' into chore/merge-master-into-feature-kmcompx-a17s9 2023-03-23 10:08:59 +07:00
Marc Durdin
549a8e009e chore(common): define BUILDER_CONFIGURATION env var 2023-03-23 09:21:55 +07:00
Marc Durdin
48bc338f26 chore: Merge branch 'feature-kmcompx' into chore/kmcompx-master-merge-a17s9 2023-03-21 13:51:25 +07:00
Marc Durdin
7cd6b00946 chore(common): prevent multiple npm ci runs in child scripts
Fixes #8471.

Ensures that `npm take-forever` (aka `npm ci`, `npm install`) only runs
once during a parent/child build script run.

Note that this also works even where build scripts manually call other
build scripts (e.g. input-processor as it is currently calling kmc
build manually) -- though this is not a recommended practice.
2023-03-21 11:08:22 +07:00
Marc Durdin
d1c8061b5f chore: Merge branch 'feature-kmcompx' into chore/merge-master-into-kmcompx 2023-03-16 12:29:17 +07:00
Marc Durdin
5eee05f16f chore(common): add common test build configurations 2023-03-14 12:40:42 +07:00
Marc Durdin
534bd2a54b
Merge pull request #8416 from keymanapp/chore/common/build-script-performance
chore(common): build script performance improvements
2023-03-14 15:41:32 +11:00
Marc Durdin
3302abaf73 chore(common): use builder_trim instead of trim, _builder_trim 2023-03-13 09:53:43 +07:00