-
Notifications
You must be signed in to change notification settings - Fork 77
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
Var versioning #4
Comments
Trying to decide how to proceed with moving the data. No function version data exists in the DB right now, so I'll start by adding the ability to parse and store to the analyzer, and add a Effectively, whatever data exists in the |
Updated clojuredocs-analyzer to store version in the newly created Core import: http://gist.github.com/605416 Also imported ring, version was added correctly. |
Migrations are done, schema now looks like this:
I also considered keeping line / file / doc / etc in the |
clojuredocs-analzyer has been updated to import to the new versioning schema: analyzer commit As of now, all libraries that are run through the analyzer now have their version numbers parsed as well (only lein supported atm). New versions are now stored only if the version number on the lib is different than previous versions. Long-term todos:
Next up is importing older versions of core and contrib for test data to implement the versions UI on top of. |
Just ran an import of 1.3.0-alpha1, 801 vars vs 781 vars in 1.2.0 Looks like the The analyzer will have to be changed, vars should no longer be removed. |
So a bit of churn here. Instead of the changes outlined above, I've gone the simpler route of adding version columns to the I feel that, while not as correct as the functions -> function_versions (and libraries -> library_versions, namespaces -> namespace_versions) method, it's simpler to reason about. Relevant changes are in the var-versioning-simple branch. Also, a bit of work on the UI has been done: macroexpand-1 1.2.0 screenshot macroexpand-1 1.3.0-alpha1 screenshot Side note: URLs have been prettified so becomes http://clojuredocs.org/clojure_core/current/clojure.core/macroexpand-1 and becomes http://clojuredocs.org/clojure_core/current/clojure.core/even_q |
Switched from using the word 'current' to 'stable' to describe the latest production version of a library. Versioning UI updates Clojure 1.2.0 is the 'stable' version here: Stable version var page showing drop-down After clicking on permalink (notice version number of stable gets added to url) After clicking on non-stable version Switched 'stable' version to 1.3.0-alpha1: |
Finished up var-versioning, rebased into master |
Adding version support requires changes in several parts of the app:
libarary
,ns
, andname
from thefunctions
table to afunction_versions
table.version
column to thefunction_versions
table.function.latest_version
/function.versions
where appropriate.function.html.erb
page to view previous versions.The text was updated successfully, but these errors were encountered: