⌈⌋ ⎇ branch:  freshcode


Autoupdate

Don't call us, we call you

freshcode.club can automate your release announcements. After submitting the initial project description, one of the update modules can be used.

releases.json
coherent
With a simple JSON format, a complete project release history can be kept. It's the most robust and detailed option to automate announcements.
Changelog
simple
Using an existing Changelog / News.txt file is often possible. It just needs coherent formatting and plain text or Markdown or RST syntax and structure.
Regex/jQuery
versatile
Screen scraping is an unsuspectedly simple way to extract changelogs from project websites. Simple rule sets allow using XPath or jQuery selectors and/or narrowing it down with regular expressions.
GitHub
convenient
Projects on Github can be automatically queried for tagged /releases. As unlovely fallback a commit log will substitute and be condensed into a change summary.
Sourceforge
testing</s>
Sourceforge projects can use their news/blog for announcing releases. Any post containing a version number in the title is assumed to be a changelog. (Sf.net is still home to many projects).
Launchpad
new</s>
LaunchPad projects will be queried per API. It strictly depends on a populated release_notes entry.
Debian
test</s>
Adds a changelog variation for debian/changelog files.

In conjunction to that, all project listings support $version placeholders in URLs already, alleviating some manual editing.

And if preferred, there is even the Freecode JSON API and a freshcode-submit command-line utility.

Regardless of the source used, a user-oriented writing style for release notes is most important. Developer and version control commit logs don't usually convey new features and their significance. Basic filtering is applied to most sources (such as stripping fixed bug #123 or Merged pull request.. etc.)

There are some general fields such as exclude = 1.2.3 and interval = 14 (in days) that work in the regex/rules field regardless of autoupdate module.