Skip to content
This repository has been archived by the owner on Jun 16, 2022. It is now read-only.

changelog

laher edited this page May 2, 2013 · 10 revisions

Changelog

v0.7.0

  • Tidying and publicising various functions and types for public API use.
  • Updated package docs - no longer dissuading use as an API.
  • godoc improvements.

v0.6.6

  • new type platforms.Platform (was a []string before).
  • couple of new test cases

v0.6.4

  • change taskParams and task options to a public type, in preparation for outside contributions.

v0.6.3

  • Per-task help (-h ). Includes TaskConfig and default values in json format.
  • bintray behaviour change: continues when a file already exists ('conflict 409' response)

v0.6.0

  • BREAKING change: commandline 'args' now represent task names. Working folder can be specified with -wd. This makes goxc more usable as a general build tool. 'goxc clean', 'goxc compile', 'goxc package', etc.
  • non-default json filename change. File extension is now .goxc[.local].json, (default config name is ''). BREAKING CHANGE for anyone using multiple configs with the -c flag.
  • json parser more flexible. Better error detection & reporting. Supports 'upgrade' of old files via -wc
  • config file simplification for v 0.6 (removal of Settings level. Support for upgrade via -wc)
  • Support BuildConstraints to specify platforms.
  • Better error handling for type coercion. New package 'typeutils'
  • Fix for '-tasks+=' (AppendTasks) option. It was broken.
  • Improvements & updates to help pages. Clearer descriptions.
  • 'bintray.com' integration, for storing artifacts.

v0.5.6

Mainly preparatory work towards v0.6 (see issues #7)

  • json config parser now parses into a map (rather than a Settings object) - more flexible for future. e.g.:
  • json config parser now provides better error messages (e.g. syntax errors give line & column number, and give type hints)
  • fix for copy-resources task (when specifying a non-'.' working directory)
  • new option -wd (working directory) in preparation for 0.6
  • [untested] support for additional platforms in go1.1+ (detects current go version).

v0.5.5

  • pkg-build (building debs) is now part of the default workflow
  • new task, copy-resources. Part of default workflow

v0.5.4

  • fixes for .ar format (for deb)

v0.5.3

  • tar.gz is now used for Linux archives
  • Preliminary .deb support added (but not into default workflow yet). See task pkg-build

v0.5.0

  • Breaking change: Remove 'artifact types' and 'codesign' options, in favour of new task names (archive, rmbin and codesign).
  • Add validation tasks go-test and go-vet. Bring these into default flow.
  • Breaking change: Make tasks more granular, i.e. go-clean,go-vet,go-test,go-fmt,codesign,go-install,xc,archive,rmbin,downloads-page. (currently xc,archive,rmbin,downloads-page are all one task simply called xc)
  • Add 'task aliases' - clean,validate,compile,package,default,all. Easier to work with.
  • Add detection of old config files (using FormatVersion). Fail on error as appropriate. Offer advice for upgrading configs. (migrating configs not supported at this stage).
  • Help system: clearer option grouping & descriptions. Task & alias descriptions.
  • Add task 'clean-destination'. Deletes whole folder (for this version only).
  • Major refactor: Re-implement tasks as structs, using a func() for invocation.
  • Refactor: calculate platform list before running tasks.
  • Refactor: split each task into a function, building results data for subsequent tasks. each of these smaller tasks will be run independently.
  • Add exclude-tasks and include-tasks options to make it easier to run just part of the standard list.
  • Refactor: split more of the code into separate files (and packages?). Several extract-method refactorings.
  • Fix bug #6 (issue with multiple go-path elements).
  • Generate downloads page based on listed contents (rather than what was generated this run). Tidy downloads page.
  • put zips into platform folders. More consistent for downloads page change (above).
  • fix: branch/build info is now included in zip names.
  • download pages: add config vars for 'filename', 'fileheader'.
  • download pages: add per-platform header. Files listed per-line
  • Per-task settings 'TaskSettings'. Map of maps. Merge configurations for TaskSettings at key/value level.
  • Dir option for go-test/go-fmt args ('./...')
  • allow (& encourage) space delimiters in os/arch settings, as opposed to commas (leading towards API)
  • tidy up downloads page further. Template?
  • zips into platform folders
  • branch/build info in zip names
  • download pages: add config vars for 'filename', 'header'
  • download pages: add per-platform header. Files listed per-line
  • option for go-test/go-fmt/go-vet args ('./..')
  • improve json overriding: prefer aliases when writing config.
  • permit old config files with Tasks: [toolchain] (but fail on any other values)
  • doc: wiki/config, improve README, wiki/changelog, wiki/upgrade-0.5
  • add task-excludes & -appends to config.Settings.

Previous versions

  • v0.3.0: default config for '-t' is now $HOME/.goxc.json. See issue 3 again. A few small API changes cause a minor version increase.
  • v0.2.2: write config with -wc
  • v0.2.0-0.2.2: Config file for setting up default settings. Preferably json. Support use of local overrides file (my.xxx.json). Similar to Chrome extensions or npm packages? See issue 3
  • v0.2.2: Removing requirement for argument. Uses current directory if none given.
  • v0.2.2: filling in support for multiple artifact types & multiple tasks (as supported in json config)
  • v0.2.1: BranchName + PrereleaseInfo + BuildName (to become part of version name)
  • v0.2.0: Removed PKG_VERSION constant in favour of compiler/linker build flags & main.VERSION variable.
  • v0.2.0: .goxc.json file.
  • v0.2.0: take in config filename as argument - using -c
  • v0.1.7: Make PKG_VERSION constant name configurable.
  • v0.1.6: Use go/parse package to interpret PKG_VERSION variable and such
  • v0.1.6: Refactoring: use a struct for all the options
  • v0.1.0: gofmt, zip archives
Clone this wiki locally