ZoneMinder / zoneminder

ZoneMinder is a free, open source Closed-circuit television software application developed for Linux which supports IP, USB and Analog cameras.
http://www.zoneminder.com/
GNU General Public License v2.0
4.9k stars 1.2k forks source link

Release v1.29.0 (take two) #1115

Closed knight-of-ni closed 8 years ago

knight-of-ni commented 8 years ago

Supersedes #549

This is my attempt to document what we need to complete before we release:

@knnniggett

@connortechnology

@pliablepixels

@kylejohnson

@SteveGilvarry

Anything not mentioned here means we do not plan to include it in the next release, so please comment if I am missing something.

Once these items are completed, I plan to immediately create a draft release for beta test. We've changed quite a bit this round, and I expect there to be issues we have not discovered yet.

pliablepixels commented 8 years ago

API: Confirmed we are at a good stopping point for 1.29 Cool ideas: no more PRs till 1.29 is released.

kylejohnson commented 8 years ago

I'd like to get #1120 into this release.

SteveGilvarry commented 8 years ago

@knnniggett all the details are in the pull I did, if you want me to document it and add to the release wiki entry can do. https://github.com/ZoneMinder/ZoneMinder/pull/966

github_changelog_generator -t [Insert Github Token] --no-issues --future-release 1.29.0 ZoneMinder/ZoneMinder Looks like it is grabbing pull requests from other branches however, if I can work out how to edit a gem I would fix it.

knight-of-ni commented 8 years ago

@SteveGilvarry no, that's good enough. I just couldn't remember where you mentioned it.

pliablepixels commented 8 years ago

That plugin rocks. I discovered it yesterday and migrated to it as well.

pliablepixels commented 8 years ago

I'd also request we add this https://github.com/ZoneMinder/ZoneMinder/pull/1136 to 1.29 - it will help me implement previous/next and gapless event navigation

kylejohnson commented 8 years ago

We gotta do a code freeze at some point!

On 11/02/2015 03:06 PM, Pliable Pixels wrote:

I'd also request we add this #1136 https://github.com/ZoneMinder/ZoneMinder/pull/1136 to 1.29 - it will help me implement previous/next and gapless event navigation

— Reply to this email directly or view it on GitHub https://github.com/ZoneMinder/ZoneMinder/issues/1115#issuecomment-153171951.

onlyjob commented 8 years ago

Maybe we could include ffmpeg-2.9 compatibility update #1137?

knight-of-ni commented 8 years ago

I'm pasting this here so I can see what the markup looks like.

I used the following command to generate this list: github_changelog_generator --since-tag v1.28.1 --token [my token] ZoneMinder/ZoneMinder

If you think one of the many additional options this tool supports would be helpful then please let me know.

[Trimmed out the example changelog, issue too long :-)]

pliablepixels commented 8 years ago

One thing to note is that we need to correctly categorize bugs vs. enhancement labels before we generate this. the current list has them mixed due to how they were labelled.

knight-of-ni commented 8 years ago

Just thought of something else.

As part of the release notes for 1.29, I would like to make an end of life announcement for the following:

I'd like ZoneMinder 1.29 to be the last version to support these items.

This is an invitation for discussion. Please let me know what you think.

kylejohnson commented 8 years ago

@knnniggett - If that's the case, I say we remove the respective files from the repo, e.g. web/skins/(mobile|xml)

knight-of-ni commented 8 years ago

Yes, exactly. Following the release of 1.29 and the end-of-life announcement, I'd like to remove all the files that make up the mentioned items. I do want to make sure we announce it sufficiently so we minimize the surprise factor.

As far as I know, those of us doing active development have all switched to cmake.

SteveGilvarry commented 8 years ago

Any archs that don't support cmake?

On Wed, 11 Nov 2015 at 8:25 AM, Andrew Bauer notifications@github.com wrote:

Yes, exactly. Following the release of 1.29 and the end-of-life announcement, I'd like to remove all the files that make up the mentioned items. I do want to make sure we announce it sufficiently so we minimize the surprise factor.

As far as I know, those of us doing active development have switched to cmake.

— Reply to this email directly or view it on GitHub https://github.com/ZoneMinder/ZoneMinder/issues/1115#issuecomment-155571792 .

pliablepixels commented 8 years ago

if I remember correctly, removing them will break zmView Pro though (not sure but I think it does rely on some of these skins)

knight-of-ni commented 8 years ago

@SteveGilvarry Archs or Distros? cmake is available in every Linux distro that I am aware of and is also available for Mac OS X, freebsd, Solaris, and even Windows. Are there any other OS'es that come to mind?

@pliablepixels I think @kylejohnson would agree that the intent of the API is to replace current third party integration methods. We would expect the authors of any third party apps out there still using the XML skin to transition to using the API.

So the idea would be to make the end of life announcement, wait a reasonable amount of time for additional feedback, and then actually delete the items in question when we feel we have waited sufficiently.

SteveGilvarry commented 8 years ago

@knnniggett that probably covers it, I was trying to think what we had seen people trying to run it on, be it OS and also architectures, but I suppose it is an OS thing and that is all the ones I have seen.

Also note I am having a look at the changelog generator to see if I can get it to only bring in pull requests on master.

knight-of-ni commented 8 years ago

@connortechnology Can you speak to the current status of Freebsd development, particularly whether or not the build process has been migrated to cmake?

connortechnology commented 8 years ago

I used cmake the last time I tried to compile on FreeBSD. It works fine.

connortechnology commented 8 years ago

The FreeaBSD ports thing uses autoconf, but I'm sure they don't really care. Their build process has a lot of alternative infrastructure.

Honestly, I only care about it basically compiling on freebsd, not how easy it will be. Anyone building this on freebsd will have to know what they are doing.

pliablepixels commented 8 years ago

@knnniggett - folks on the forum seem to be commenting that neither scilinux nor centOS7 supports the image scale API that #1000 requires - I'm not sure that's correct, but I'm hearing more of it, if you'd like to take a look at least on CentOS before merging. Thread in question: https://forums.zoneminder.com/viewtopic.php?f=32&t=23645&p=90523#p90523 --> both BiloxiGeek (SciLinux) and Abi (CentOS7) seem to be saying this

knight-of-ni commented 8 years ago

All they have to do is make sure the php-gd package is installed.

Thanks,

Andy

No Trees were killed in the sending of this message.
However, a large number of electrons were terribly inconvenienced.

Date: Sun, 15 Nov 2015 09:25:24 -0800 From: notifications@github.com To: ZoneMinder@noreply.github.com CC: knnniggett@hotmail.com Subject: Re: [ZoneMinder] Release v1.29.0 (take two) (#1115)

@knnniggett - folks on the forum seem to be commenting that neither scilinux nor centOS7 supports the image scale API that #1000 requires - I'm not sure that's correct, but I'm hearing more of it, if you'd like to take a look at least on CentOS before merging. Thread in question: https://forums.zoneminder.com/viewtopic.php?f=32&t=23645&p=90523#p90523 --> both BiloxiGeek (SciLinux) and Abi (CentOS7) seem to be saying this

— Reply to this email directly or view it on GitHub.

pliablepixels commented 8 years ago

Doesn't seem to be the case @knnniggett - looks like imagescale() is only available in PHP 5.5 while CentOS 7 seems to have 5.4

knight-of-ni commented 8 years ago

Then that is a problem. We will need to do something other than call imagescale when php < 5.5

Thanks,

Andy

No Trees were killed in the sending of this message.
However, a large number of electrons were terribly inconvenienced.

Date: Sun, 15 Nov 2015 11:53:53 -0800 From: notifications@github.com To: ZoneMinder@noreply.github.com CC: knnniggett@hotmail.com Subject: Re: [ZoneMinder] Release v1.29.0 (take two) (#1115)

Doesn't seem to be the case @knnniggett - looks like imagescale() is only available in PHP 5.5 while CentOS 7 seems to have 5.4

— Reply to this email directly or view it on GitHub.

knight-of-ni commented 8 years ago

A quick google suggested that the imagecopyresized function (part of php-gd) can be used instead of imagescale

http://php.net/manual/en/function.imagecopyresized.php

Suggested here at the bottom: http://stackoverflow.com/questions/27813479/imagescale-function-in-php

Thanks,

Andy

No Trees were killed in the sending of this message.
However, a large number of electrons were terribly inconvenienced.

Date: Sun, 15 Nov 2015 11:53:53 -0800 From: notifications@github.com To: ZoneMinder@noreply.github.com CC: knnniggett@hotmail.com Subject: Re: [ZoneMinder] Release v1.29.0 (take two) (#1115)

Doesn't seem to be the case @knnniggett - looks like imagescale() is only available in PHP 5.5 while CentOS 7 seems to have 5.4

— Reply to this email directly or view it on GitHub.

SteveGilvarry commented 8 years ago

@knnniggett I would recommend --no-issues as a flag for change log, this removes the spam issues and results in the Pull requests only which are the actual changes. I just did a PR on the generator to include a filter for release branch as current system brings in all PR's including ones on video and other branches. https://github.com/skywinder/github-changelog-generator/pull/305 Then I would run it like this to create the 1.29.0 changelog file. github_changelog_generator -t <Token> --no-issues --future-release 1.29.0 --release-branch master ZoneMinder/ZoneMinder

connortechnology commented 8 years ago

I would like to propose that we name or in some way commemorate @manupap1 with this release. He made some very significant contributions during his time here.

knight-of-ni commented 8 years ago

Excellent idea. I second the motion.

knight-of-ni commented 8 years ago

@SteveGilvarry --release-branch does not appear to be a valid parameter for version 1.9.0 of github_changelog_generator

Oh nevermind. I see that parameter is part of PR https://github.com/skywinder/github-changelog-generator/pull/305

SteveGilvarry commented 8 years ago

Yes I have a PR on the project to add it just have discussion about style/cleanup. How about I run it once we are ready? I can PR change log now so you can see it?

On Sun, 22 Nov 2015 at 9:40 AM, Andrew Bauer notifications@github.com wrote:

@SteveGilvarry https://github.com/SteveGilvarry --release-branch does not appear to be a valid parameter for version 1.9.0

— Reply to this email directly or view it on GitHub https://github.com/ZoneMinder/ZoneMinder/issues/1115#issuecomment-158688275 .

knight-of-ni commented 8 years ago

Yeah, would you mind generator one now just so I can see it?

With help, I finally fixed #1153 . I feel as if a great weight has been lifted.

knight-of-ni commented 8 years ago

DRAFT

Fade to Black (Proposed release title)

In Memory of Emmanuel Papin

The ZoneMinder team would like to dedicate this release to Emmanuel Papin. Emmanuel was a significant contributor to this project and even went on to write a license plate plugin. You can view his work here: https://github.com/manupap1/libzoneminder-plugin-openalpr

It is with great sorrow that I must report his passing on August 19, 2015. He will be missed.

Important Feature Depreciation Announcement

The following features are planned to be removed from the ZoneMinder project in a future release:

Significant New Features and Changes

The ZoneMinder API! This is now the supported way for third party tools and apps to communicate with ZoneMinder. Please contact us if you find anything lacking in the API.

Referred to by us as MultiServer, ZoneMinder now supports the display of cameras attached to other ZoneMinder servers from a single web console. Previously, something similar could be done by adding a camera with a url that pointed to another ZoneMinder server. While this worked, it was inefficient, as processing and storage were duplicated across both servers. The new MultiServer feature accomplishes the same thing, but leaves the processing and storage to just one server. This allows ZoneMinder to scale better.

The option USE_DEEP_STORAGE has been hidden. This option has been enabled as the default for many years. Recently, it was identified that turning this option off resulted in the near immediate deletion of events from the disk. Not good. Consequently, this option can no longer be modified from Options. In the unlikely event that you have a working system not already using deep storage, please contact us so we can get that enabled without loss of your data.

ZoneMinder no longer uses php short open tags.

ZoneMinder has limited ONVIF discovery support, but it must be enabled at build time. We could use someone to build and test this on different makes and models of cameras.

Changelog

[insert output from changelog generator here]

onlyjob commented 8 years ago

Sad news about Emmanuel. :( Is there a public obituary?

knight-of-ni commented 8 years ago

@onlyjob We received the following post in our forum, notifying us of Emmanuel, just a few days ago: https://github.com/ZoneMinder/ZoneMinder/pull/1160#issuecomment-157692925

I have tried, but have not been able to find any additional information through online searches.

aplocher commented 8 years ago

Is it considered a faux pas to mention the "EOL Announcement" immediately after mentioning Emmanuel? (or is it a faux pas to point that out... d'oh). Sounds like a great dev, sad news...

knight-of-ni commented 8 years ago

@aplocher Yes, I had considered that, but was waiting to see if anyone besides myself noticed. I don't want to move it to the end because it won't be read. Perhaps I could call it something other than "EOL".

SteveGilvarry commented 8 years ago

Feature Deprecation, which you would do this release to advise people to stop using. On Mon, 30 Nov 2015 at 11:45 PM, Andrew Bauer notifications@github.com wrote:

@aplocher https://github.com/aplocher Yes, I had considered that, but was waiting to see if anyone besides myself noticed. I don't want to move it to the end because it won't be read. Perhaps I could call it something other than "EOL".

— Reply to this email directly or view it on GitHub https://github.com/ZoneMinder/ZoneMinder/issues/1115#issuecomment-160618972 .

knight-of-ni commented 8 years ago

Ah, thanks @SteveGilvarry . The wording has been updated.

knight-of-ni commented 8 years ago

The past holiday weekend kind of put things on the breaks. I'm trying to reignite motivation on a 1.29.0 release, myself included.

As I understand it, we've got these three issues to work on:

SteveGilvarry commented 8 years ago

1179 put in for that libvlc issue.

1176 fixes the version issues in #1167

SteveGilvarry commented 8 years ago

All I want for Christmas is my 1.29 proposed release.

onlyjob commented 8 years ago

Yeah, and my children will have no Christmas presents this year if you don't release. :wink:

knight-of-ni commented 8 years ago

With #1190 merged, we are down to just one last major feature to address before release - multi-server.

pliablepixels commented 8 years ago

I've buttoned up the API security issue for now - so if you want to you can merge it. That way folks who really don't want the API have an option https://github.com/ZoneMinder/ZoneMinder/issues/1195 -- your call to include or not

knight-of-ni commented 8 years ago

Alright, we finally made it. I am going to bump master to 1.29.0, spawn a new 1.29.0 branch, and then create a draft release.

On a side note, perhaps someone can explain to me how new documentation, placed under our /docs folder, makes it over to http://zoneminder.readthedocs.org . Is there a manual process which must be performed?

kylejohnson commented 8 years ago

Automated via webhook

On January 1, 2016 8:42:23 AM MST, Andrew Bauer notifications@github.com wrote:

Alright, we finally made it. I am going to bump master to 1.29.0, spawn a new 1.29.0 branch, and then create a draft release.

On a side note, perhaps someone can explain to me how new documentation, placed under our /docs folder, makes it over to http://zoneminder.readthedocs.org . Is there a manual process what must be done?


Reply to this email directly or view it on GitHub: https://github.com/ZoneMinder/ZoneMinder/issues/1115#issuecomment-168313511

Sent from my Android device with K-9 Mail. Please excuse my brevity.

pliablepixels commented 8 years ago

Awesome! look forward to it!

knight-of-ni commented 8 years ago

A draft release has been created and is available on the Releases Page. @SteveGilvarry when you've got a moment, can you add your github_changelog_generator goodness?

knight-of-ni commented 8 years ago

Well this sucks. Because our project contains submodules, I have uploaded a tar.gz containing ZoneMinder + submodules, but I can't seem to make the other links, which Github auto-created, go away.

I'm searching for an answer or workaround, but so far I've not found anything.

pliablepixels commented 8 years ago

I don't think there is a workaround. We should probably move to git subtree instead - that should take care of this problem.