Commit Graph

72 Commits

Author SHA1 Message Date
David Diaz d3b78bc27d Added basic cookies support.
You can now let Beau know you expect cookies to be passed around by
setting COOKIEJAR to true. I'd eventually like to add support for file
storage or something similar.
2018-04-26 17:50:09 -06:00
David Diaz 9d10db3243 Added support for forms.
You can now pass a form key to the request and it'll set the header and
payload automatically.
2018-04-26 14:52:06 -06:00
David Diaz 3df90600ac Updated dependencies. 2018-04-26 10:56:42 -06:00
Sergio Díaz 6c552cb7a2
Merge pull request #9 from Seich/next-plugin-improvements
Modifiers can now edit request settings.
2018-04-20 18:57:38 -06:00
David Diaz d15564a9e3 Modifiers can now edit request settings.
This gives a lot more flexibility when it comes to what a modifier can
do. They can now use any valid request option to change how the response
behaves.
2018-04-20 18:29:19 -06:00
Sergio Díaz d154f73232
Merge pull request #8 from Seich/next
Allow Escaping the $
2018-04-20 17:57:26 -06:00
David Diaz f13cbda84a Allow the escaping of variables.
This results in two important changes:

- Made changes so that we actually use the replacement regex groups.
This was supposed to happen from the start but I guess I didn't notice.
By fixing this the code for finding dependencies and the cache#parse is
now a bit more reliable.

- This also changes how we store variables in the cache (which I've been
meaning to do for a while.) removing the dollar sign that usually
preceeded all cached requests in Beau. It's all more sensible now.

There's more refactoring left to do.
2018-04-13 10:12:03 -06:00
David Diaz e9c07cbbf9 0.8.0 2018-04-08 13:56:11 -06:00
Sergio Díaz 490bc85174
Merge pull request #7 from Seich/next-plugins
Refactored Beau's Plugin System
2018-04-08 13:41:34 -06:00
David Diaz 1fb45da5de Refactored Beau's Plugin System
It now uses a plugin registry. Plugins are loaded when the configuration
file is first parsed. When a request is made it is passed over to the
available modifiers before and after it's execution and applies
whichever changes are made. It now passes a copy instead of a reference
to provide a nicer interface.

Dynamic values have been added as a plugin type. These plugins are
javascript functions that can be called from within the beau file and
whose results are used as a replacement.

These are added along with variables to the runtime execution flow. The
current order for their execution is:

Request composition -> Dynamic Values -> Pre-Request Modifiers ->
Post-Request Modifiers.
2018-04-08 13:33:43 -06:00
David Diaz 293c3883e9 0.7.3 2018-03-01 16:03:45 -06:00
David Diaz 7e25f9fd29 Added update-notifier.
I like being notified of updates so I figured everyone else does. /s
2018-03-01 16:02:54 -06:00
David Diaz 070ffc3106 0.7.2 2018-03-01 11:44:15 -06:00
David Diaz 2f33442072 Added support for dotenv.
If a .env file is present it's values will be added to beau's
environment variables.
2018-03-01 11:42:41 -06:00
David Diaz 228d2de7f3 0.7.1 2018-03-01 11:02:51 -06:00
David Diaz 124d55d1ae Fixed issue where an empty payload was changed to an empty object. 2018-03-01 10:58:30 -06:00
David Diaz e140778393 0.7.0 2018-01-21 15:40:20 -06:00
Sergio Díaz 59acbd59b5
Merge pull request #6 from Seich/hosts
Added support for multiple hosts.
2018-01-21 15:37:56 -06:00
David Diaz fe401c1391 Added support for multiple hosts.
This introduces a top level key: `hosts`. It's an array where you can
configure multiple hosts with their own requests, they share defaults
and environment with the global scope.

This allows you to  have multiple paths being the same with different
endpoints and settings.
2018-01-19 18:10:00 -06:00
David Diaz 5f0f1821e4 0.6.1 2018-01-17 01:58:13 -06:00
David Diaz 8926f4d2da Updated package.json 2018-01-17 01:57:52 -06:00
David Diaz 2dbeb0d230 0.6.0 2018-01-11 17:30:22 -06:00
David Diaz 8ab1636e13 Updated README 2018-01-11 01:01:57 -06:00
Sergio Díaz d598e5e322
Merge pull request #5 from Seich/environment-variables
This adds a missing test for when a request is already in a cache.
2018-01-11 00:14:22 -06:00
David Diaz 29b93e6cba This adds a missing test for when a request is already in a cache. 2018-01-11 00:08:38 -06:00
Sergio Díaz 28ddf88a41
Merge pull request #4 from Seich/environment-variables
This adds environment variables.
2018-01-10 16:52:43 -06:00
David Diaz 90752c47b1 This adds environment variables.
Allows you to set variables that you can then use throughout your
configuration file.
2018-01-10 16:39:38 -06:00
Sergio Díaz 95744bf823
Merge pull request #3 from Seich/moving-to-src
Moved all source files into a src folder. It was getting crowded.
2018-01-10 15:20:33 -06:00
David Diaz 44205d488c Moved all source files into a src folder. It was getting crowded. 2018-01-10 15:13:47 -06:00
Sergio Díaz b3cbe5c544
Merge pull request #2 from Seich/init
Added an init command to the CLI.
2017-12-27 21:55:42 -06:00
David Diaz 933fb1b077 Added an init command to the CLI.
Init will create a config file with the endpoint filled to whatever is
set. It also has helpful comments to guide you through creating a config
file.
2017-12-27 21:28:54 -06:00
Sergio Díaz dc7d6f977d
Merge pull request #1 from Seich/defaults
Added Defaults.
2017-12-27 16:47:14 -06:00
David Diaz 40abf85a78 Added a new top-level setting: defaults.
Defaults allow you to set default settings for all requests. You can
pass any configuration value and it'll be merged with any values the
request already has allowing you to write even less repetitive code.
2017-12-27 16:43:47 -06:00
David Diaz 78a12e99f2 We now allow slashes in aliases. 2017-12-26 23:50:05 -06:00
David Diaz 24a0fdf788 0.5.0 2017-12-23 01:59:55 -06:00
David Diaz 458f0f65ce Updated ReadMe 2017-12-23 01:57:13 -06:00
David Diaz 930a957bf3 Cleaning up the code.
Mostly trying to get test coverage up by refactoring and cleaning
methods.
2017-12-23 00:34:36 -06:00
David Diaz 35983addf7 Refactored the cli.
Started making use of commander's commands and actions. This changes how
beau is invoked but I feel like it's a lot easier to work with now.
2017-12-07 21:55:36 -06:00
David Diaz 6a3e0e136b 0.4.0 2017-12-04 00:00:42 -06:00
David Diaz 32b9f0f523 Cleaning the CLI tool. Small refactorings all around.
If a string is passed to a request configuration its now considered
that request's alias.
2017-12-03 23:56:09 -06:00
David Diaz a8a71caad8 0.3.1 2017-10-23 10:13:25 -06:00
David Diaz 4be83a5d4d Added a .gitattributes to fix issues when installing on some OSs 2017-10-23 10:08:42 -06:00
David Diaz 17e3394f9c 0.3.0 2017-10-21 14:39:28 -06:00
David Diaz e8f3d0eda2 Added support for a documentation field in the beau.yaml file.
This field will be use to prettify the output of certain tools and to
document apis.
2017-10-21 14:39:00 -06:00
David Diaz baa4a4eafc Added format-less versions of list and request to the command line. This
makes it easier to add direct support for beau on external applications.
2017-10-21 00:54:38 -06:00
David Diaz 10623f6625 Replaced some promises with async/await. 2017-10-20 19:33:35 -06:00
David Diaz 23cedd5637 Cleaned up part of the findDependencies method to use a filter. Not sure
why but it feels better.
2017-10-20 19:13:15 -06:00
David Diaz 7ecd5428c6 Replaced unirest with request-promise. Tried using the built it http
stuff but it's just silly.
2017-10-20 18:59:37 -06:00
Sergio Díaz d1dfcb8c7d Small readme update. 2017-04-05 23:07:12 -06:00
Sergio Díaz df884bdb8b 0.2.1 2017-04-05 23:04:19 -06:00