Skip to main content
# auacm-cli

A command line interface to the Auburn ACM web app (auacm.com)

## Installation

### From pip

Run `pip install auacm`

### Build from source

Clone this repository

`git clone https://github.com/brandonlmorris/auacm-cli`

Then in the top-level directroy, run

`python3 setup.py install`

This will install all the code and create the `auacm` shell command.


---

## Usage

`auacm-cli` installs itself as a shell script. In the terminal, run
`$ auacm`
to display the help.

All of the features of `auacm-cli` are written as subcommands to the main
`auacm` script. To log in, run

`$ auacm login`

You will be prompted for your name and password. Your session will be saved,
so you don't need to authenticate with every run of the script. Subcommands
`logout` and `whoami` exist to destroy the current session and print data
about the current user respectively.

### Problems

To view all the problems on the server, run

`$ auacm problem`

(Protip: pipe the result into `less` for your reading pleasure:
`$ auacm problem | less`)

To search for a problem, simply add the query after `problem` (multi-word
queries must be enclosed in quotes):

`$ auacm problem "cash cow"`

Adding a `-v` flag will increase the verbosity of the results, providing
the problem id, shortname, difficult, etc.

To get more detailed information on a specific problem, including the
description, input/output, and sample cases, run the subcommand `problem-info`
with the problem name or id.

`$ auacm problem-info parity`

**Note:** Searching by problem name is done by case-insensitive substrings. If
you search "cow" but another problem contains "cow" and comes first
alphabetically, that other problem will be used.

### Submission

You can also submit solutions to problems using `auacm`. To do so, simply
run the `submit` subcommand, followed by the problem name and the solution
file:

`$ auacm submit "cash cow" solution.py`

Note that if you're submitting a Python solution, you can use the `-p` flag
to indicate the version of Python. The default is Python 3.

`$ auacm submit parity parity.py -p 2`

After you submit, `auacm` will query your submission to obtain the results.

## Competitions

The `competition` subcommand can list competitions, and give a detailed view
of a particular competition. To see all competitions, run

`$ auacm competitions`

To get more info about a specific competition, run the command with the
competition name afterword (multi-word queries need to be enclosed in spaces).

`$ auacm competitions "october 15th"

Similar to problems, you can also search for a competition using it's unique
competition id with the `-i` or `--id` flag.

---

## Bugs? Improvements? Funny jokes?

Send them to me at brandon dot morris95 at gmail dot com, or leave a comment
on this repo. Contributions are warmly welcomed.

Metadata

Release files for auacm 0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for auacm 0.4
File Size Uploaded Provenance
auacm-0.4.tar.gz 11.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for auacm 0.4
File Interpreter ABI Platform
auacm-0.4-py3-none-any.whl Python 3 none any Details

Total release size: 27.5 kB

Release files / auacm-0.4.tar.gz

Download URL auacm-0.4.tar.gz
Size 11.9 kB
Tags Source
SHA-256 checksum
How to use checksums
7ff73cbe4f44766540eca50a87e1f821d6b16e9d6091992ac3779dc8c9d0966e
BLAKE2b-256 checksum
How to use checksums
00d127d6d2b1c9dec32d680537f639255cac54b8d9375a6698c61ef74ef8d570
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / auacm-0.4-py3-none-any.whl

Download URL auacm-0.4-py3-none-any.whl
Size 15.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
57c381b104c34fe200312008e12049486df791f3a3751337d4a08eb7daf2b21e
BLAKE2b-256 checksum
How to use checksums
7c5efb7386ae5d4739f83c4f275e50a20f6b11d2871123fed3001681bbdec7bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for auacm 0.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page