Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Path to arangojs 7.0.0 #660

Closed
pluma opened this issue May 1, 2020 · 13 comments
Closed

Path to arangojs 7.0.0 #660

pluma opened this issue May 1, 2020 · 13 comments
Labels
Question Probably not a bug.

Comments

@pluma
Copy link
Contributor

pluma commented May 1, 2020

This issue serves to document the process of wrapping up the arangojs 7.0.0 release.

  1. The master branch has been frozen.
  2. Any further development of v6 until v7.0.0 is released will happen in the v6 branch.
  3. The arangojs 7 PR (arangojs 7.0.0 #626) has been merged into the v7 branch.
  4. Any preview releases prior to v7.0.0 will happen in the v7 branch.

Once v7.0.0 is ready to be released:

  1. A final minor release will be published from the v6 branch containing deprecations and upgrade paths where possible (Deprecations for v6 #661).
  2. The master branch will be fast-forwarded onto the v6 branch.
  3. The v7 branch will be rebased onto the master branch and git tags for the preview releases adjusted accordingly.
  4. The master branch will then be fast-forwarded onto the v7 branch and unfrozen.
  5. The v6 and v7 branches will be removed.

TODO for v7.0.0:

  • Inline all remaining documentation
  • Check for any stray TODOs
@pluma pluma added the Question Probably not a bug. label May 1, 2020
@pluma pluma pinned this issue May 1, 2020
@pluma
Copy link
Contributor Author

pluma commented May 1, 2020

Preview release 7.0.0-preview.0 has been released on npm with the next tag:

https://github.com/arangodb/arangojs/releases/tag/v7.0.0-preview.0

@pluma
Copy link
Contributor Author

pluma commented May 7, 2020

The v7 branch documentation is now continuously released at http://arangodb.github.io/arangojs/

The workflow probably needs a filter to ensure it only deploys the documentation if the commit message indicates a release (i.e. message is "x.y.z" where x, y and z are numbers).

@pluma
Copy link
Contributor Author

pluma commented May 12, 2020

The hosted documentation now contains multiple versions. /devel will always be updated whenever the active branch (currently v7) changes, /6.x.y are manually updated, /7.x.y onward are automatically published whenever a new version tag is pushed.

@pluma
Copy link
Contributor Author

pluma commented May 13, 2020

v7.0.0-preview.1 has been released today.

Changes: https://github.com/arangodb/arangojs/releases/tag/v7.0.0-preview.1
Documentation: http://arangodb.github.io/arangojs/7.0.0-preview.1/index.html

@iMoses
Copy link

iMoses commented May 22, 2020

I went over the changes and have a question.
why was everything related to arangoSearchView was changed to simply view except for createArangoSearchView?
seems to me like it should also be changed to createView.

Not sure this is the right place to comment this, but we are talking about 7.0.0 :)

@pluma
Copy link
Contributor Author

pluma commented May 24, 2020

Good question. Right now ArangoDB only has one View type but in the future it may have more. The ArangoSearchView is thus a kind of View like EdgeCollection is a type of collection. As there is a createEdgeCollection method, there's also a createArangoSearchView method. There's no meaningful default type, so there's no generic createView method (yet).

@ZhangJian-3ti
Copy link

Then createSearchView is a better name.

@ZhangJian-3ti
Copy link

Or createView with a type config, defaults as search view.

@pluma
Copy link
Contributor Author

pluma commented Jun 16, 2020

There's no clear use case for a future alternative View type yet, so I think it's okay to rename the method to createView for now even if it means requiring a breaking change in the distant future.

FWIW the view type is called arangosearch within ArangoDB, so searchView is not an option. It seems to be the only case in which the type uses "arango" as part of its name, so this is easy to stumble over.

@pluma
Copy link
Contributor Author

pluma commented Jul 6, 2020

Deprecations are not really an option given the most significant changes are to the collections API, so there will not be a final minor release for v6 to add these.

Right now the plan is as follows:

  1. Inline the remaining documentation (i.e. Graph API). ✔️
  2. Resolve any remaining TODOs in the code. ✔️
  3. Cherry-pick any changes from v6 into v7. ✔️
  4. Resolve Implement BatchedArrayCursor #673. ✔️
  5. Copy DocumentCollection/EdgeCollection documentation into Collection class. (Collection class is no longer public) ✔️
  6. Rename v7 to main. (merged and deleted) ✔️
  7. Release 7.0.0-rc.0. ✔️
  8. Smoke test the browser build. ✔️
  9. Check for any undocumented types and missing examples. ✔️
  10. Clean up the v7 CHANGELOG. ✔️
  11. Publish 7.0.0 final.
  12. Write a migration guide. ✔️

I hope we can get to step 7 by the end of this week or the middle of next week (i.e. 2020-07-15).

@pluma
Copy link
Contributor Author

pluma commented Jul 10, 2020

We've just released v7.0.0-rc.0, which is the final preview release before v7.0.0 proper.

EDIT: Sorry, I lied.

@pluma
Copy link
Contributor Author

pluma commented Aug 20, 2020

Okay, v7.0.0-rc.2 will now be the final preview release, i.e. there will be no further changes before v7.0.0. Th only thing left to do prior to release is cleaning up the CHANGELOG.

EDIT: Also as an addendum: I accidentally fast-forwarded the npm latest branch to v7.0.0-rc.2 because I forgot to use the next tag when releasing the rc. I fixed it within the minute, but due to caching it might still result in people getting the wrong version if they're particularly unlucky.

@pluma
Copy link
Contributor Author

pluma commented Aug 21, 2020

✨ v7.0.0 is out now ✨

v7.0.0 has now been officially released on the npm latest tag, which means v7.0.0 is now officially the new release you get when you install arangojs from npm (or yarn): https://www.npmjs.com/package/arangojs

(technically it's v7.0.1 because I forgot to include the README in v7.0.0 but there are no changes between the two releases otherwise)

@pluma pluma closed this as completed Aug 21, 2020
@pluma pluma unpinned this issue Aug 21, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Question Probably not a bug.
Projects
None yet
Development

No branches or pull requests

3 participants