ENH: New boundary inputs
State: closed

- [x] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them
- [x] tests added / passed
- [x] closes #40245
- [x] whatsnew entry


Labels:
name: Deprecate
description: Functionality to remove in pandas
name: API - Consistency
description: Internal Consistency of API/Behavior

Comments:
Hello @hewittk! Thanks for updating this PR. We checked the lines you've touched for [PEP 8](https://www.python.org/dev/peps/pep-0008) issues, and found:





There are currently no PEP 8 issues detected in this Pull Request. Cheers! :beers: 

##### Comment last updated at 2021-06-25 03:56:00 UTC
This pull request makes for more consistency and flexibility of the arguments for series.between and the validate_endpoints method of date_timelike.py which is the underlying method of `closed` for date_range. The parameters that can be inputted to the methods are either a boolean value or a string value of 'both', 'left', 'right', or 'neither'.
Thanks for the pr @hewittk! Looks like some unrelated changes crept in - seeing some `pip` related additions which should be reverted
Thank you for letting me know @mzeitlin11! The pip files should be deleted now, let me know if there are any unrelated additions still there that I haven't noticed.

> Thank you for letting me know @mzeitlin11! The pip files should be deleted now, let me know if there are any unrelated additions still there that I haven't noticed.

Looks good now. I think codecov is failing - if you added new options to parameters, we need to make sure that they're all tested (and a whatsnew note should be added explaining user-facing changes there are here)
@hewittk I just took a look at what `validate_endpoints` feeds and there are quite a few time-based functions that use it and have `closed` as a boundary option, so there will likely be lots more changes needed for everything to go through.

Instead, and since this is your first PR, I would recommend you make only changes to `Series.between` and add the relevant tests and documentation changes just for that method, since it is less controversial, better defined and easier for devs to review. Of course after that it gives a basis for attempting further standardisation in other functions. 
This pull request is stale because it has been open for thirty days with no activity. Please update or respond to this comment if you're still interested in working on this.
> This pull request is stale because it has been open for thirty days with no activity. Please update or respond to this comment if you're still interested in working on this.

I apologize for the lack of activity, I have been very busy with midterms lately. I will work towards closing the request early this weekend. 
I believe that I have made all suggested changes now. I decided to go with @attack68's idea to only make changes to `Series.between` because its implementation and definition are simpler due to amount of functions that `validate_endpoints` underlies. 
The continuous integration tests don't appear to be running on my contributions to this branch now and I'm not sure why that is. There also appears to be a conflict in the whatsnew file although I wasn't aware of myself removing any other entries from the depreciation section and there aren't removals to the file showing in the files changed.
@hewittk Can you resolve conflicts(there should be a little button at the bottom to do so)? I think CI is not triggered if conflicts are present.  
@hewittk can you merge master and fix the doc-string
there is a test failure on this build: https://github.com/pandas-dev/pandas/pull/40628/checks?check_run_id=2909716187
likely need to change the inclusive argument in the test.
Thanks @hewittk 
@hewittk want to make a PR enforcing this deprecation?