The exercism CLI follows semantic versioning.
- Your contribution here
- #344 Make the CLI config paths more XDG friendly - @narqo
- #346 Fallback to UTF-8 if encoding is uncertain - @petertseng
- #350 Add ARMv8 binaries to CLI releases - @Tonkpils
- #352 Fix case sensitivity on slug and track ID - @Tonkpils
- #353 Print confirmation when fetching --all - @neslom
- #356 Resolve symlinks before attempting to read files - @lcowell
- #358 Redact API key from debug output - @Tonkpils
- #359 Add short flag
-m
for submit comment flag - @jgsqware - #366 Allow obfuscation on configure command - @dmmulroy
- #367 Use supplied confirmation text from API on submit - @nilbus
- #339 Don't run status command if API key is missing - @ests
- #336 Add '--all' flag to fetch command - @neslom
- #333 Update references of codegangsta/cli -> urfave/cli - @manusajith, @blackerby
- #331 Improve usage/help text of submit command - @manusajith
- #306 Don't use Fatal to print usage - @broady
- #307 Pass API key when fetching individual exercises - @kytrinyx
- #312 Add missing newline on usage string - @jppunnett
- #318 Show activity stream URL after submitting - @lcowell
- 4710640 - @lcowell
- Update codegangsta/cli dependency - @manusajith, @lcowell
- #320 Add missing newlines to usage strings - @hjljo
- #328 Append solution URL path consistently - @Tonkpils
- #284 Update release instructions - @kytrinyx
- #285 Create a copy/pastable release text - @kytrinyx
- #289 Fix a typo in the usage statement - [@AlexWheeler]
- #290 Fix upgrade command for Linux systems - [@jbaiter]
- #292 Vendor dependencies - @Tonkpils
- #293 Remove extraneous/distracting details from README - @Tonkpils
- #294 Improve usage statement: alphabetize commands - [@beanieboi]
- #297 Improve debug output when API key is unconfigured - [@mrageh]
- #299 List output uses track ID and problem from list - @Tonkpils
- #301 Return error message for unknown track status - @neslom
- #302 Add helpful error message when user tries to submit a directory - [@alebaffa]
- #270 Allow commenting on submission with --comment - @Tonkpils
- #271 Increase timeout to 20 seconds - @Tonkpils
- #273 Guard against submitting spec files and README - @daveyarwood
- #278 Create files with 0644 mode, create missing directories for downloaded solutions - @petertseng
- #281 Create missing directories for downloaded problems - @petertseng
- #282 Remove random encouragement after submitting - @kytrinyx
- #283 Print current configuration after calling configure command - @kytrinyx
- #212 extract path related code from config - @lcowell
- #215 use $XDG_CONFIG_HOME if available - @lcowell
- #248 #253 add debugging output - @lcowell
- #256 clean up build scripts - @lcowell
- #258 reduce filesystem noise on fetch @devonestes
- #261 improve error message when track and exercise can't be identified on submit - @anxiousmodernman
- #262 encourage iterating to improve after first submission on an exercise - @eToThePiIPower
- #200: Add guard to unsubmit command - @kytrinyx
- #204: Improve upgrade failure messages and increase timeout - @Tonkpils
- #206: Fix verbose flag and removed short
-v
- @zabawaba99 - #208: avoid ambiguous or unresolvable exercism paths - @lcowell
- b3c3d6f: Improve error message on Internal Server Error - @Tonkpils
- #196: Add upgrade command - @Tonkpils
- #194: Fix home expansion on configure update - @Tonkpils
- 523c5bd: Document release process - @kytrinyx
- #192: Loosen up restrictions on --test flag for submissions - @Tonkpils
- #190: Fix bug in home directory expansion for Windows - @Tonkpils
- 1a2fd1b: Handle config as either directory or file - @lcowell
- #177: Improve JSON error handling and reporting - @Tonkpils
- #178: Add support for $XDG_CONFIG_HOME - @lcowell
- #184: Handle different file encodings in submissions - @ambroff
- #179: Pretty print the JSON config - @Tonkpils
- #181: Fix path issue when downloading problems - @Tonkpils
- #186: Allow people to specify a target directory for the demo - @Tonkpils
- #189: Implement
--test
flag to allow submitting a test file in the solution - @pminten
- #167: Fixes misspelling of exercism list command - @queuebit
- Tweak output from
fetch
so that languages are scannable. - #35: Add support for submitting multiple-file solutions
- #171: Implement
skip
command to bypass individual exercises - @Tonkpils
Added:
- #154: Add 'list' command to list available exercises for a language - @lcowell
- 3551884: Add host connectivity status to debug output. - @lcowell
- #162: Allow users to open the browser from the terminal. - @zabawaba99
Removed:
- Stop supporting legacy config files (
~/.exercism.go
) - Deleted deprecated login/logout commands
- Deleted deprecated key names in config
Fixed:
- #151: Expand '~' in config path to home directory - @lcowell
- #155: Display problems not yet submitted on fetch API - @Tonkpils
- f999e69: Disambiguate debug and verbose flags. - @lcowell
- Report 'new' at the bottom after fetching, it's going to be more relevant than 'unchanged', which includes all the languages they don't care about.
Tweaked:
- Set environment variable in build script
- #153: Refactored configuration package - @kytrinyx
- #157: Refactored API package - @Tonkpils
- exercism.io#2155: Fixed problem with passed in config file being ignored.
- Added first version of changelog
- #147: added
--api
option to exercism configure - @morphatic
- #143: added command for downloading a specific solution - @harimp
- #142: fixed command name to be
exercism
rather thancli
ongo get
- @Tonkpils
- 9cbd069: Made path comparison case insensitive
- 0ccc7a4: Implemented debug flag on submit command
- #138: Added conversion to line endings for submissions on Windows - @rprouse
- #116: Added support for setting name of config file in an environment variable
- 47d6fd4: Added a
track
command to list the problems in a given language - #126: Added explanation in
submit
response about fetching the next problems - #133: Changed config command to create the exercism directory, rather than waiting until the first time problems are fetched - @Tonkpils
- 88cf1a1fbc884545dfc10e98535f667e4a43e693: Added ARMv6 to build
- 12672c4: Added an error message when people submit a file that is not within the exercism directory tree
- #128: Made paths os-agnostic in tests - @ccnp123
- 4ca3e97: Fixed incorrect HOME directory on Windows
- 8bd1a25: Added ARMv5 to build
- #117: Archive windows binaries using zip rather than tar and gzip - @LegalizeAdulthood
- 8bec393: Fixed submit so it can handle symlinks
- Completely reorganized the code, separating each command into a separate handler
- 17fc164: Fixed paths to be platform-independent
- 8b174e2: Made the output of demo command more helpful
- 8b174e2: Deleted the 'current' command
- ac6dbfd: Added os and architecture to the user agent
- 5d58fd1: Fixed bug in detecting user's home directory
- #100: Added 'debug' command, which supersedes the 'info' command - @Tonkpils
- Extracted a couple of commands into separate handlers
- 6ec5876: Added a hack to rename old config files to the new default name
- bb7d0d6: Rename 'home' command to 'info'
- #95: Added 'home' command
- Deprecate login/logout commands
- 1a39134: Changed demo to write exercises to the default exercism problems directory
- 07cc334: Deleted the whoami command, we weren't using github usernames for anything
- #97: Changed default exercism directory to ~/exercism - @lcowell
- #94: Updated language detection to handle C++ - @LegalizeAdulthood
- #92: Renamed config json file to .exercism.json instead of .exercism.go - @lcowell
- f55653f: Deleted go vet from travis build temporarily until the codebase can be cleaned up
- #91: Replaced temp file usage with encode/decode - @lcowell
- #90: Added sanitization to config values to trim whitespace before writing it - @lcowell
- Did a fair amount of cleanup to make code a bit more idiomatic
- #86: Triggered interactive login command for commands that require auth - @Tonkpils
- a5b7a55: Update login prompt
- #84: Change hard-coded filepath so that it will work on any platform - @simonjefford
- #82: Fixed typo in tests - @srt32
- aa7446d: Clarified output to user after they fetch
- #79: Updated development instructions to fix permissions problem - @andrewsardone
- #78: Deleted deprecated action
peek
- @djquan - #74: Implemented new option on
fetch
to get a single language - @Tonkpils - #75: Improved feedback to user after logging in - @Tonkpils
- #72: Optimized use of temp file - @Dparker1990
- #70: Fixed a panic - @Tonkpils
- #68: Fixed how user input is read so that it doesn't stop at the first space - @Tonkpils
- 5b672ee: Provided a visual mark next to new problems that get fetched
- #63: Implemeted
fetch
for a single language - @Tonkpils - #62: Expose error message from API to user on
fetch
- @Tonkpils - #59: Added global flag to pass the path to the config file instead of relying on default - @isbadawi
- #57: Added description to the restore command - @rcode5
- #56: Updated developer instructions in README based on real-life experience - @rcode5
- #47: Added 'restore' command to download all of a user's existing solutions with their corresponding problems - @ebautistabar
- Numerous small fixes and cleanup to code and documentation - @dpritchett, @TrevorBramble, @elimisteve
- f8dd974: Fixed content-type header when posting to API
- Fixed user-agent string
- exercism.io#1039: Stopped clobbering existing files on fetch
- 7f39ee4: Allow users to specify a particular problem when fetching.
- exercism.io#998: Fix problem with writing an empty config file under certain circumstances.
- #28: Create exercism directory immediately upon logging in.
- Upgrade to newer version of codegangsta/cli library, which returns an error from the main Run() function.
- 371521f: Add support for nested directories under the language track directory allowing us to create idiomatic scala, clojure, and other exercises.
- 371521f: Consume the new hash of filename => content that the problem API returns.
- 371521f: Add output when fetching to tell the user where the files where created.
- Refactor to extract config package
- Delete stray binary TODO we might rewrite history on this one, see #102.
- #22: Display submission url after submitting solution - @Tonkpils
- #21: Add unsubmit command - @Tonkpils
- #20: Add current command - @Tonkpils
- Inline refactoring experiment, various cleanup
- #11: Don't require authentication for demo - @msgehard
- #14: Print out fetched assignments - @Tonkpils
- #16: Fix broken submit for relative path names - @nf
- Create a separate demo directory if there's no configured exercism directory
- #7: Recognize haskell test files
- #5: Fix typo - @simonjefford
- #1: Output the location of the config file - @msgehard
- Recognize more language test files - @msgehard
All changes by @msgehard
- Clean up homedir
- Add dev instructions to README
All changes by @msgehard
- Ensure that ruby gem's config file doesn't get clobbered
- Add cross-compilation
- Set proper User-Agent so server doesn't blow up.
- Implement
submit
- Implement
demo
- Implement
peek
- Expand ~ in config
- Implement
fetch
- Implement
current
- Implement
whoami
- Implement login and logout
- Build on Travis