Merge pull request #764 from htacg/issue-752

Issue #752, and other items
This commit is contained in:
Geoff McLane 2019-01-31 19:13:14 +01:00 committed by GitHub
commit 273c25dd38
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 71 additions and 7 deletions

46
README/RELEASE.md Normal file
View file

@ -0,0 +1,46 @@
# HTACG HTML Tidy
The **Release Process** is made up of many little steps. These have been documented before in issues like [394-1](https://github.com/htacg/tidy-html5/issues/394#issuecomment-206952915), and [394-2](https://github.com/htacg/tidy-html5/issues/394#issuecomment-207814834), and others, but this is to further **document** the process...
This assumes the current `next` branch is version 5.7.XXX. See VERSION.md for chosen version scheme.
## Release Process for 5.8.0
### Lead up:
- Create the next release milestone, 5.10, if not already done...
- Decide on PR's to include, bumping version.txt, accordingly...
- Decide on any show-stopper outstanding issues, and action...
- Change milestone of all excluded this time issues to the next 5.10 milestone, or to indefinite...
- Decide target date for release...
### The Release:
1. Update version.txt to 5.8.0, and date... commit
2. Create branch, `$ git checkout -b release/5.8`
3. Update README/vershist.log... perl script... commit
4. Add `$ git tag 5.8.0`
5. Publish `$ git push -u origin release/5.8 --tags`
6. Generate release 5.8.0.html... perl script... copy to...
7. Create Github release v5.8.0 - becomes [Latest Release](https://github.com/htacg/tidy-html5/releases)
8. Other things?
- Generate release binaries
- Add [binaries](http://binaries.html-tidy.org/)
- Add api [docs](http://api.html-tidy.org/#part_apiref)
- Update web pages [html-tidy.org](http://www.html-tidy.org/)
### Post:
- Update `master` branch to `release`
- Update `next` version.txt to 5.9.0, open for new fixes...
- Add more binaries...
## Notes on `Release Process`:
This **HTACG HTML Tidy** `official` release process must be supplemented with distribution by others.
Of course, if possible, we recomend building tidy from the git source, it is easy, but also in some OS'es others offer distribution in various ways...
See [Get Tidy](http://www.html-tidy.org/#homepage19700601get_tidy) - This page really needs expanding. There are some suggestions pending, and more feedback welcome...
; eof

View file

@ -481,16 +481,16 @@ TIDY_EXPORT void TIDY_CALL tidyGeneralInfo( TidyDoc tdoc );
/** Load an ASCII Tidy configuration file and set the configuration per its /** Load an ASCII Tidy configuration file and set the configuration per its
** contents. ** contents. Reports config option errors, which can be filtered.
** @result Returns 0 upon success, or any other value if there was an error. ** @result Returns 0 upon success, or any other value if there was an option error.
*/ */
TIDY_EXPORT int TIDY_CALL tidyLoadConfig(TidyDoc tdoc, /**< The TidyDoc to which to apply the configuration. */ TIDY_EXPORT int TIDY_CALL tidyLoadConfig(TidyDoc tdoc, /**< The TidyDoc to which to apply the configuration. */
ctmbstr configFile /**< The complete path to the file to load. */ ctmbstr configFile /**< The complete path to the file to load. */
); );
/** Load a Tidy configuration file with the specified character encoding, and /** Load a Tidy configuration file with the specified character encoding, and
** set the configuration per its contents. ** set the configuration per its contents. Reports config option errors, which can be filtered.
** @result Returns 0 upon success, or any other value if there was an error. ** @result Returns 0 upon success, or any other value if there was an option error.
*/ */
TIDY_EXPORT int TIDY_CALL tidyLoadConfigEnc(TidyDoc tdoc, /**< The TidyDoc to which to apply the configuration. */ TIDY_EXPORT int TIDY_CALL tidyLoadConfigEnc(TidyDoc tdoc, /**< The TidyDoc to which to apply the configuration. */
ctmbstr configFile, /**< The complete path to the file to load. */ ctmbstr configFile, /**< The complete path to the file to load. */

View file

@ -877,9 +877,27 @@ static ctmbstr ExpandTilde( TidyDocImpl* doc, ctmbstr filename )
if (filename[1] == '/') if (filename[1] == '/')
{ {
home_dir = getenv("HOME"); home_dir = getenv("HOME");
if ( home_dir ) if (home_dir) {
++filename; ++filename;
} }
#ifdef _WIN32
else if (strlen(filename) >= 3) { /* at least '~/+1' */
/* no HOME env in Windows - got for HOMEDRIVE=C: HOMEPATH=\Users\user */
char * hd = getenv("HOMEDRIVE");
char * hp = getenv("HOMEPATH");
if (hd && hp) {
ctmbstr s = TidyDocAlloc(doc, _MAX_PATH);
strcpy(s, hd);
strcat(s, hp);
strcat(s, "\\");
strcat(s, &filename[2]);
return s;
}
}
#endif /* _WIN32 */
}
#ifdef SUPPORT_GETPWNAM #ifdef SUPPORT_GETPWNAM
else else
{ {

View file

@ -2194,7 +2194,7 @@ static languageDefinition language_en = { whichPluralForm_en, {
{ TC_LABEL_LANG, 0, "lang" }, { TC_LABEL_LANG, 0, "lang" },
{ TC_LABEL_LEVL, 0, "level" }, { TC_LABEL_LEVL, 0, "level" },
{ TC_LABEL_OPT, 0, "option" }, { TC_LABEL_OPT, 0, "option" },
{ TC_MAIN_ERROR_LOAD_CONFIG, 0, "Loading config file \"%s\" failed, err = %d" }, { TC_MAIN_ERROR_LOAD_CONFIG, 0, "Loading config file \"%s\" problems, err = %d" },
{ TC_OPT_ACCESS, 0, { TC_OPT_ACCESS, 0,
"do additional accessibility checks (<level> = 0, 1, 2, 3). 0 is " "do additional accessibility checks (<level> = 0, 1, 2, 3). 0 is "
"assumed if <level> is missing." "assumed if <level> is missing."

View file

@ -347,7 +347,7 @@ static struct _dispatchTable {
{ STRING_CONTENT_LOOKS, TidyInfo, formatStandard }, /* reportMarkupVersion() */ { STRING_CONTENT_LOOKS, TidyInfo, formatStandard }, /* reportMarkupVersion() */
{ STRING_DOCTYPE_GIVEN, TidyInfo, formatStandard }, /* reportMarkupVersion() */ { STRING_DOCTYPE_GIVEN, TidyInfo, formatStandard }, /* reportMarkupVersion() */
{ STRING_MISSING_MALFORMED, TidyConfig, formatStandard }, { STRING_MISSING_MALFORMED, TidyConfig, formatStandard },
{ STRING_MUTING_TYPE, TidyConfig, formatStandard }, { STRING_MUTING_TYPE, TidyInfo, formatStandard },
{ STRING_NO_SYSID, TidyInfo, formatStandard }, /* reportMarkupVersion() */ { STRING_NO_SYSID, TidyInfo, formatStandard }, /* reportMarkupVersion() */
{ STRING_UNKNOWN_OPTION, TidyConfig, formatStandard }, { STRING_UNKNOWN_OPTION, TidyConfig, formatStandard },
{ SUSPECTED_MISSING_QUOTE, TidyWarning, formatStandard }, { SUSPECTED_MISSING_QUOTE, TidyWarning, formatStandard },