Does the since query work for commits in Stash?

The following two REST queries return me exactly the same 25 commits:

Since 62c96826 is the sixth commit returned by the first query I would expect the second query to return me only five (or six?) commits, the five that have been committed "since" 62c96826. Do misunderstand how this works.

1 answer

1 accepted

Hi Curt,

I'm afraid that particular endpoint seems to require that if you want to use 'since' you must provide _both_ since and until. I'm not entirely sure if this is by design or not. The REST documentation does somewhat indicate this, but that may just be based on the current behaviour.

Retrieve a page of changesets from a given starting commit or between two commits.

EDIT: Actually now that I think about it, the reason would have to be that without the 'until' parameter we wouldn't know what branch (or changeset) to terminate at. Would you mean the default branch, which is what happens without any params? I will definitely ask someone next week though.



First, Charles, thanks for the clarification. That works just fine, and will meet my needs.

I do think that the doc should be updated:

- My prefernece is for the behavior to change. Since there is default behavior for no-parameters, I think it is fair to expect the same behavior with since only.

- No-parameters is neither "a given starting point or between two commits". Since that is not true, it seems very natural to assume, in the absence of specific documentation, that the "since" only should work even though not technically meeting the same test. :-)

- The descriptions for 'since' and 'until' are almost identical even though one flies solo just fine and the other doesn't. That difference in behavior should be called out explicitly in the docs.


This is a bit of a side note, but maybe worth mentioning while we are talking about documentation:

The page gives an example which doesn't seem to work as I'd expect if I change the 'at' parameter, and I don't see that parameter documented anywhere. I'm guessing it isn't valid?:

curl -u fred:fred -X POST -H "Content-Type: application/json" http://localhost:7990/rest/api/1.0/projects/WORK/repos/my-repo/commits/?at=master

Hi Curt,

Thanks for pointing that out. In the code that's marked as 'deprecated' (but for some reason isn't being generated in the docs) and has been replaced completely by 'until'. I'll make sure we update that example too.



Suggest an answer

Log in or Join to answer
Community showcase
Piotr Plewa
Published Dec 27, 2017 in Bitbucket

Recipe: Deploying AWS Lambda functions with Bitbucket Pipelines

Bitbucket Pipelines helps me manage and automate a number of serverless deployments to AWS Lambda and this is how I do it. I'm building Node.js Lambda functions using node-lambda&nbsp...

631 views 0 4
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot