Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Try and fix relationships with downstream #24232
I'm a happy Debian and ownCloud user for a long time now. Today I saw the package being evicted from Debian's repo and I was sad. Digging a little bit around I arrive to things like #22691. In principle the PR is ok, bugs in software package by Debian should first be reported in Debian's BTS and the maintainer should decide whether is part of her patches or it should be forwarded upstream. At least that's how usually should work. Alas, this is not the first time upstream that has problems with bugs reported to things done downstream.
I also understand, from what I read, that in this case downstream didn't properly communicate with the ownCloud community, but I don't think that alienating downstream is the best solution. I think a better approach is to apply a variant of Postel's law: "Be open in what you receive, and strict in what you send". As the Debian maintainer said, 'we’re doing our best to offer it to our users'. One of the things that this implies, more or less, is that the maintainer will try to keep the upgrade path as smooth as possible. In general, Debian has a very good record on upgrade paths, and personally that's why I chose it.
Unluckily I can't see the patch because the package has been removed, so I can't help in that particular case. I wish this kind of problems could be solved any time soon, and this is my way to try to make that happen. I appreciate Jos's mail, because it goes in the same direction.
As an outsider to the particular problem but also as a developer of database based applications, wouldn't it be possible to apply each individual upgrade script from the original release all the way to the latest one?
@StyXman You could but each app has its own update scripts so that's a LOT of separate scripts to keep track off, esp with new apps popping up, renaming, moving, splitting... It'd be possible, but it is just a huge amount of work to develop and test on all the databases and stuff ownCloud supports. You're also not unlikely to end up with special bugs that won't show up until you upgrade some day in the future, and they'll be impossible to debug by then.
It is just very fragile. A proper solution would require a new updater technology that is more stand-alone and designed to do this - that was introduced in ownCloud 9.0 and might allow stuff like this later in the 9.x series, but bolting that on the older releases is a huge, complex task.
For 7.0 users the best solution would be to write an independent upgrade script that does it all on its own, supporting all apps and databases. That, too, is a huge task, but less likely to break everything.
I wouldn't oppose that last thing but who's going to do the work?
For now, I'm writing on a blog post to help ppl manually upgrade from the Debian package to our official 8.0 package, then 8.1, then 8.2 and then they can decide if they want 9.0 already or not. (there is no reason to stick to anything older than 8.2, at least not if you value your data and security).
Help testing that how-to would be super welcome... I was hoping to have a draft last week but stuff got in the way, will work on it today.
I see, and I think that what the maintainer tried to do was to solve it the best he could (his own words). Reacting like 'I'd even consider a warning about not using Debian packages on our download page fair enough' is not helping in the discussion. I just wish that for the sake of ownCloud's relationship with distributions you acknowledge it.
Maybe some of you think distros are not important ('Don't worry guys, owncloud is going to be removed from Debian anyway and is also planned for Fedora. So this problem is going to resolve itself pretty soon.'), but as a user of both (apps and distros) I assure you most people just use that. Dou you happen to have any historic statistics about how users are installing their ownCloud setups?
In the particular problem, I see you also have upgrade problems. What Iḿ trying to say is that the maintainer is trying his best for the time being, just like you and anybody else.
That's outrightly wrong. See https://fedoramagazine.org/owncloud-updates-coming-soon-fedora/ on how Fedora did handle this. The Fedora packagers did actually get in touch with us in advance unlike some other distribution packagers
@LukasReschke: I was just quoting. Bravo for Fedora.
Also, keeping that attitude doesn't help a little bit. Yes, I agree that there was some kind of miscommunication, but reacting that way does not put you in a good light either. So what I think both sides should do is to get together and work on it. I hope the invitation for the meeting in September is taken, but it's my opinion that should think of other ways to better communicate with downstream.
I know he wanted to solve it the best way he could. But that doesn't make it a good idea. Doing open hart surgery on yourself might be done with great intentions but it's not smart either way.
We expressed worries as we ourselves would not feel confident in our own ability to do this and we certainly didn't and don't expect a packager who doesn't even talk to us to do a decent job protecting the data of our users in his free time. Add to that the thought of having to deal with the bug reports and many broken installations and damage to our reputation this would cause and you can imagine why we responded with a "please don't do this".
That was our 'official' response, not
You can't blame us for discussing this internally and people then giving their opinion. That isn't our communication and really, don't expect me to tell people to stop giving their opinion on our own mailing lists, bug tracker and other communication channels.
Honestly, I don't think we did anything particularly wrong here. We asked downstream not to risk the data of our users. They got upset and dropped ownCloud packaging. Their right, not our fault.
As I said, I'll write a blog to help users migrate from Debian packages to our packages. Feedback and help with that would be welcome. I see no point in doing anything else as the current ownCloud packagers at Debian have made it very clear they don't want to continue working on packages. If somebody else steps up, they'll get the same support anybody else (like Fedora) gets when they ask.
We're of course critical of the distribution rules that make packaging ownCloud harder than it needs to be, but that's an entirely different issue and other distributions are starting to move to fix that (eg snappy, Project Atomic, XDG-Apps etc) so in time, Debian will probably become a good place for ownCloud again.
With regards to upgrade problems on the ownCloud side: sure. ownCloud is very flexible and it is nearly impossible to test all combinations of technologies we support without more help. Our packages aren't perfect either and we're not terribly happy with the deployment options we can give to users. Help with the packages is of course welcome, you can find sources here.
If you don't mind I'll close this issue. I'll share steps on upgrading Debian packages here when I've got some, would love to hear if they work and what feedback you have.
Ok, sorry for the confusion, but from a user perspective, I think I just fell into a similar error that would be to report a bug here about the Debian packaging. I think you should try to use a less public method for your internal discussions; the issue being public doesn't help distinguish form an internal discussion.
Well, that package version was aimed to
My aim with that paragraph was to highlight that in both sides, like everywhere else, software is always WIP and that you will most always find flaws. Trying to say "don't point fingers" I ended pointing a finger, how ironic... :(
@StyXman don't worry about pointing fingers. Yes, there are issues on all sides, certainly. Sorry if I got overly defensive.
About our internal discussions being public - that is a property of open source communities. At least, we like it that way. Our Debian friends made some stingy comments about us on their mailing list too - you won't see me come in and complain about them, I respect that that is the place where they have their discussions and they are free to say what they like. I'd be upset if it ended up in an announcement or if they send it to OUR mailing lists, that's different. What I mean is: I see our and their mailing lists and infrastructure as our and their living rooms. With open doors and windows ;-) You can say what you like and if people overhear a conversation and get upset, well, perhaps they shouldn't have gone to that living room. But if you go to somebody else's' living room and yell at them, now THAT is impolite.
I know about Experimental but it did show a scary direction development was taking (and even there could lead to data loss issues). Now, as said earlier, I won't say it is impossible to get this right, but we were (and are) very skeptical and then somebody doing it alone... I know, engineers are often like "how hard could it be" but the answer usually is "harder than you thought". Certainly in this case.
Meanwhile, I'm trying to figure out how to upgrade from the Debian packages to ours.
I'm currently guessing the process would be something like this:
Any feedback on that, perhaps? I'd really appreciate help here ;-)
Next up would be to upgrade to 8.1, 8.2 and 9 (if the user wants).
For the apps, it is probably a good idea to export calendars and contacts at the start and import them at the end, esp if going to ownCloud 9. That is just more likely to succeed ;-)
Apps will need installation and upgrading manually. This will take a while...