abbysmal / Canopy

A git-blogging unikernel written using MirageOS
ISC License
120 stars 27 forks source link

Master doesn't build #55

Closed rgrinberg closed 8 years ago

rgrinberg commented 8 years ago
Error: This expression has type Ptime.t
       but an expression was expected of type
         Syndic.Atom.published = CalendarLib.Calendar.t

Do I need to pin something perhaps?

abbysmal commented 8 years ago

Looks like you got an older version of Syndic, it has been updated recently (replacing Calendar by Ptime). :)

hannesm commented 8 years ago

ptme needs to be >= 1.5.0, and irmin 0.10.1 (git 1.7.2) there's #43 to get irmin-0.11/git-1.8.0 support (the first commit is sufficient), but I still haven't figured how to get git-1.8.0 to work on Xen. @Engil I think you should merge #43, and note that xen is currently broken... the way forward is clearly >=irmin-0.11...

abbysmal commented 8 years ago

43 has just been merged, we can close the other one I guess. (I was waiting to see which one seemed like the better idea, but in the end yeah 0.11 is the way forward, either way we'll have to wait for a few bugfixes and releases to see everything working again).

hannesm commented 8 years ago

@Engil cool! if you could test (on unix) whether the created&last updated times are now correct (on startup and after you modify content + push hook gets executed), with several repositories, that'd be great. #48 has some sorting which I believe is not needed for irmin-0.11...

abbysmal commented 8 years ago

Tested it right now, seems like the timestamps are correct at startup on both https://github.com/Engil/test-canopy and https://github.com/Engil/__blog.

The timestamp is correct on __blog after updating an article + push, however we still didn't fixed the fact that if a page was cached (relying on it's timestamp), and if you add a page that will show up in the navbar (so, if you add an article at the root of the repo), once you go back to this cached page after the update, the navbar isn't updated (since the cached page rely on the article individual timestamp).

Also, on https://github.com/Engil/test-canopy, still the same error I already reported to Thomas, where the pulling fails.

Called from file "lib/transfer_io.ml", line 38, characters 40-74
2016-05-16 13:38.32: ERR [git.mirage] Git_mirage.IO.read_exactly: expecting 4, got 0
Fail pull (Failure "Git_mirage.IO.read_exactly: expecting 4, got 0")

(I created this repo a few month ago to isolate this bug and have a reference repo that triggers the problem.)

rgrinberg commented 8 years ago

Strange, I don't have syndic 1.5 available. Will try pinning

rgrinberg commented 8 years ago

Now I'm getting this error:

Error: This expression has type
         Store.key ->
         (unit -> string Lwt.t) -> string list -> string list Lwt.t
       but an expression was expected of type
         Store.key -> Store.value Lwt.t -> 'a -> 'a Lwt.t
       Type unit -> string Lwt.t is not compatible with type
         Store.value Lwt.t
abbysmal commented 8 years ago

Related to Irmin, canopy now requires Irmin 0.11. I guess we should update the doc with those informations, since mirage won't allow us to enforce anything on this side, sorry about that!

hannesm commented 8 years ago

@rgrinberg which Canopy git revision do you use? which irmin version do you use? the current master should work with 0.11 (if you're on irmin 0.10, remove the () in canopy_store.ml line 80 (it should be value >>= fun content -> for 0.10, value () >>= fun content -> for 0.11.

rgrinberg commented 8 years ago

I see, I'm still using irmin 0.10.1. Using canopy/master.

rgrinberg commented 8 years ago

OK it all builds. Thanks!