41 Commits

Author SHA1 Message Date
Aaron Suen
0b72f05d16 Add support for screenshots. 2020-03-28 11:23:38 -04:00
Aaron Suen
d091c0b5f0 Do not lazy-load any modules
This may mask errors that might cause a crash
later in the middle of the process.
2020-03-28 10:16:06 -04:00
Aaron Suen
e521a29232 Typo 2020-03-28 08:59:54 -04:00
Aaron Suen
e507be98a6 Handle not-found option cases. 2020-03-28 08:51:41 -04:00
Aaron Suen
2730f17dc9 Preserve original tag order. 2020-03-28 08:49:46 -04:00
Aaron Suen
27b75a7803 Saner file reading API 2020-03-28 07:54:08 -04:00
Aaron Suen
3504f704cb Include export-ignore files in metadata load
For running .cdbrelease.lua, do a checkout first
(to include all files) and then write the export over
it (to apply substitutions).

The mod scan is still done on the export only,
to avoid including excluded paths.
2020-03-28 07:28:06 -04:00
Aaron Suen
e3a93ceef4 Debug output tidying 2020-03-28 07:21:46 -04:00
Aaron Suen
ff59fd7df1 Keep explicit blanks, auto-fill repo if missing. 2020-03-28 06:53:31 -04:00
Aaron Suen
7bbb5fb816 Fix JSON newline serialization. 2020-03-27 23:53:40 -04:00
Aaron Suen
5795bef3a4 Add dry run, mod scan. 2020-03-27 23:43:56 -04:00
Aaron Suen
86569d426b Handle unified licenses. 2020-03-27 23:27:45 -04:00
Aaron Suen
113423ca35 Load metadata from lua instead of JSON. 2020-03-27 23:24:33 -04:00
Aaron Suen
9546ae147e Beautify, code standards. 2020-03-27 22:22:51 -04:00
Aaron Suen
c583e8dd2c Beef up lua hook, more extensive JSON support. 2020-03-27 22:06:00 -04:00
Aaron Suen
3cd90c517b Oh, more typos. 2020-03-27 18:23:30 -04:00
Aaron Suen
e100ae3fe2 Load long desc from README.md if .cdbdesc.md not found. 2020-03-27 18:21:57 -04:00
Aaron Suen
98bef24f94 Fix broken "provides" for simple mods. 2020-03-27 18:15:27 -04:00
Aaron Suen
be3d790092 More meta loading bugs. 2020-03-27 18:00:32 -04:00
Aaron Suen
1367ec758c Typo 2020-03-27 17:56:31 -04:00
Aaron Suen
fb914cc7fa Always try to load metadata from git. 2020-03-27 17:55:16 -04:00
Aaron Suen
64d42100d4 Scan repo instead of metadata path for deps. 2020-03-27 17:44:42 -04:00
Aaron Suen
233af66c31 Fix missing edit flag on release. 2020-03-27 17:30:47 -04:00
Aaron Suen
a89924f4eb Only edit upon request or release. 2020-03-27 17:24:24 -04:00
Aaron Suen
3966a42431 VS Code formatting. 2020-03-27 17:20:16 -04:00
Aaron Suen
fbd0d3e8b7 More debug code. 2020-03-27 17:19:27 -04:00
Aaron Suen
80a9b3401b Remove debug code. 2020-03-27 17:18:40 -04:00
Aaron Suen
cd318e232d Reenable release, disabled for debugging. 2020-03-27 17:17:46 -04:00
Aaron Suen
d15799f6a9 Add CDB details sync support.
- Automatically load detail edits from meta JSON, allowing release
  of new descriptions to sync with release of package versions.
- Load long description from external markdown file.
- Automatically calculate provides/depends info if needed.
2020-03-27 17:12:38 -04:00
Aaron Suen
9948a55f69 Docker config, add a TODO file. 2019-11-02 12:43:26 -04:00
Aaron Suen
6e9ff0ca1d Remove debugging code. 2019-08-14 00:48:12 -04:00
Aaron Suen
815eec04e6 Bugfixes, add config file. 2019-08-13 23:07:02 -04:00
Aaron Suen
fc8289c8ac Document new --fromgit option. 2019-03-31 10:05:16 -04:00
Aaron Suen
1f0ae91cf3 New layered config system.
This allows --fromgit to override built-in defaults (e.g. setting
min/max MT version) but not explicit cmdline settings.
2019-03-31 09:47:16 -04:00
Aaron Suen
a8ed60296a Add --fromgit to pull settings from a git repo.
If --fromgit=<url> is specified:
- Shallow-clone the repo.
- Export the tree from the clone.
- Run .cdbrelease.lua hook in the root of the tree.
- Merge any data returned into config.

.cdbrelease.lua can do more-or-less whatever lua allows (e.g.
using dofile, filesystem access, etc.) to figure out the settings
it wants to provide.  This allows it to do things like include
files from mods for shared versioning logic and perform more
complex version number calculations, like NodeCore does.  It could
also be a security risk, so this should be used only on repos that
the user has good control over.

The canonical example is for .cdbrelease.lua to compute its own
version number from stats that get baked into the file by the
export step based on .gitattributes.  Things like defaulting the
pacakge name and author are possible too.

Settings that are already explicitly specified at an earlier step
are ignored from .cdbrelease.lua.
2019-03-31 09:24:16 -04:00
Aaron Suen
4522b3d864 Guard against pure numerical version numbers. 2019-03-30 00:20:41 -04:00
Aaron Suen
057b9f469f Add project icon. 2019-03-29 06:29:48 -04:00
Aaron Suen
4a27cc332b More tracing and checking... 2019-03-29 06:17:05 -04:00
Aaron Suen
56e7f5b75e Document extra options. 2019-02-09 01:11:41 -05:00
Aaron Suen
abf75a0e0c Add a readme. 2019-02-09 00:16:20 -05:00
Aaron Suen
c0e8b94b75 New project. 2019-02-09 00:02:19 -05:00