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

Release Piwik 3.2.1 #12333

Merged
merged 97 commits into from Dec 6, 2017
Merged

Release Piwik 3.2.1 #12333

merged 97 commits into from Dec 6, 2017

Conversation

mattab
Copy link
Member

@mattab mattab commented Dec 6, 2017

Michael Heerklotz and others added 30 commits June 6, 2017 13:43
* Fix a system test

* Fix a system test
* switch to custom travis testing matrix

* bump submodules + .travis.yml

* use "dist: precise" for UITests
* http://piwik.org -> https://piwik.org

* more HTTPS URLs

* some more HTTPS URLs

* test README

* don't show "Plugin Hompage" for Piwik plugins

* fix tests

* compile minified js

(hope I didn't break anything)

* some more small changes

* fix UI test

* comment length in piwik.js changed due to https links

* fix test

* update ui file

* update submodule
…the frontend (#11873)

* Add generate:angular-component command to generate an angular component.

* Do not modify Date prototype.

* Move period selector code from calendar.js to new angular directive (just move, no refactoring).

* Extract date picker code from period selector code and put into new directive.

* Extract range picking code into separate component than period selector.

* Extract single period calendar to separate component & extract period specific functionality to new extendable periods service.

* Fixing regressions in period selector behavior.

* Move bulk of period selector code from directive to controller, & fix variable name in date range picker template.

* Fix issue w/ yesterday date value, remove need to give period selector directive translations and make sure periods can be extended in the frontend.

* Make sure period selector still works outside of an angular routing context (ie, in embedded dashboard).

* In period selector UI test, hide ajaxLoadingCalendar using CSS since it is now managed by angular.

* Make sure selected period highlighting changes immediately after selecting, even if loading a new page.

* Put period selector top level element ID & classes on correct elements to ensure certain styles work properly.

* Make sure selected period text changes immediately after selecing period, even if loading a new page or changing the URL.

* Make sure range start/end changes immediately when a period is selected & selected period date range stops being highlighted immediately when a range period is selected, even if loading a new page.

* Updating expected screenshots.

* Updating screenshots.

* Assorted fixes for period selector refactor.

- Filter out invalid period labels (can happen if INI config for allowed periods is incorrect).
- When determining display text for range, don't try to format the startRangeDate/endRangeDate vars, they're both strings.
- Use correct selector when closing period selector.

* Set global piwik date/period values on location change, outside of period selector component.

* Do not skip parsing date if it does not start with an int (since the JS can handle today/yesterday/now).

* Assorted fixes for period selector refactor:

- use $onChanges instead of watches in datepicker (watches get triggered every time, $onChanges doesn't)
- don't use arrays for selected/highlighted dates (for some weird reason, changing one of these arrays results in angular thinking it changes 3 times instead of once)
- don't redraw on triggered mouseover events (something triggers mouseover when a date is selected, probably jquery datepicker)
- draw after a setTimeout when a date is selected so our drawing occurs after jquery datepicker draws

* Achieving smoother rendering for period selector by removing click handlers jquery datepicker adds.

Also fixed bug where selecting the current period type reset the view date for the date picker.

* Bound range date in period selector by piwik min/max date, so inferred dates will always be within allowed pickable dates in picker.

* Removing ES6 used by accident + fix for issue when switching from non-year to year period (ui-datepicker-current-day class does not get removed).

* Fix for angularjs one way binding quirk: initial property value is set before $onInit not during construction.

* Avoid an exception when a date input in the date range picker is empty.

* Split up change/keyup event to solve strange race condition in IE 10 on browserstack.

* Change period selector "click again" tooltip to "double click".

* Remove tabindexes > 1 so period selector control can be tabbed through.

* Show visual cue for invalid dates in date range picker.

* Only hide period option tooltip if period is active period, not if period is selected period.

* In period selector, disable apply button if range is invalid. Also fix case when \$.datepicker.parseDate returns null instead of throwing.
TBD: Need to rebuild js, need to maybe add a test if possible.
* Formats numbers in the real time widget

* Defers real-time widget formatting to the view only
Fix addTracker does not return the tracker instance
…r visitor profile (#12212)

* Make it possible to change the number af maximum visits aggregated for visitor profile

* update expected screenshot
* Do not show bundles in premium feature widgets

* filter bundles in widget itself and not in template
* Ensure segment param is always considered for widget urls

* Adds ui test for segmented dashboard
changes to dashboard weren't saved anymore when changing series selection
Fabian Dellwing and others added 29 commits November 23, 2017 11:41
this should fix uneven styling of widgets. could not monitor any unwanted differences, but it is possible.
… CSV) (#12233)

* Extract mail configuring parts of sendReport method & write tests for them.

* Use twig in AttachedFileReportEmailGenerator.

* Extract header/footer of html scheduled report email into re-usable View subclasses & use for PDF/CSV emails.

* Fixing test failures.

* Integrationt est
Added events for adding and filtering profile summaries
Update check needs to sent activated state
* Adds help screen for shortcuts

* Dynamically create shortcut summary by using new js method piwikHelper.registerShortcut

* Update CHANGELOG.md
* add possibility to restrict piwik login by ip

* better whitelist implementation

* move classes to corehome

* better error message

* better config

* make sure ips can be overwritten via DI

* fix ui tests
…le commit + tests). (#12267)

* In log importer, allow filtering logs by host & datetime (new submodule commit + tests).

* Add tests for replay tracking filtering & check that filtered line is in output.

* More log filtering tests for log replay.
)

* New "Event URL" segment `eventUrl` to segment on any Segment URL

Useful for many use cases for example:

* Creating Custom Reports such as "Top page URLs by Event action"
* Segmenting by Event URL and view events triggered on a specific Page URL
* Fixes #11131 Action URL segment could filter both Page URLs OR Event URLs (as advertised originally in the 2.16.0 changelog but it wasn't actually fully working yet)

* fix typo no capital letter

* remove column type to prevent new column being created in the log_link_visit_action table

* set correct action type for segment eventUrl

* modify test

* eventUrl needs action data

* fix suggested values for eventUrl

* update test files

* event url is stored without protocol

* update test file
* If a period is filtered out, the result of the periods array becomes an object which breaks the period selector which expects an array.

* Use $onInit instead of directive constructor. Seems angular.js silences errors when this is done.

* Parse previousN/lastN dates correctly in angular periods service.

* Parse periods using piwikPeriods client side, since we cannot assume a date range. Also if an invalid is used for period/date, display ERROR in the period selector.

* Angular will swallow errors from datepicker.parseDate, so add a console.log for developer sanity + make sure period selector has consistent state even when period/date values are invalid (& result in failed date parsing).

* Update misc/log-analytics submodule to latest.
…revious7/last7, since the frontend does not expect those values. (#12324)
* updates device detector to 3.9.1

* update test file

* update submodule
* Moved UI tests from core to custom alerts plugin

* submodule update
@mattab mattab merged commit 72f133c into master Dec 6, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet