Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
d9aac19
Bump sass from 1.79.3 to 1.79.4
dependabot[bot] Sep 30, 2024
001295b
Merge branch 'master' into dependabot/npm_and_yarn/sass-1.79.4
ArtursKadikis Oct 3, 2024
1149bbb
Bump cookie-parser from 1.4.6 to 1.4.7
dependabot[bot] Oct 9, 2024
6a44326
Merge pull request #5654 from Countly/anna/master
Cookiezaurs Oct 9, 2024
fe95fd3
Merge branch 'master' into dependabot/npm_and_yarn/cookie-parser-1.4.7
ar2rsawseen Oct 10, 2024
1c2b7bc
Merge pull request #5653 from Countly/dependabot/npm_and_yarn/cookie-…
ar2rsawseen Oct 10, 2024
71bb76d
Bump moment-timezone from 0.5.45 to 0.5.46
dependabot[bot] Oct 10, 2024
36b38f2
Merge branch 'master' into dependabot/npm_and_yarn/sass-1.79.4
ar2rsawseen Oct 10, 2024
06913b0
Merge pull request #5608 from Countly/dependabot/npm_and_yarn/sass-1.…
ar2rsawseen Oct 10, 2024
cf638b2
Merge branch 'master' into dependabot/npm_and_yarn/moment-timezone-0.…
ar2rsawseen Oct 10, 2024
327d8e1
Bump express-rate-limit from 7.4.0 to 7.4.1
dependabot[bot] Oct 10, 2024
8a35fa9
Merge pull request #5635 from Countly/dependabot/npm_and_yarn/moment-…
ar2rsawseen Oct 10, 2024
9b3cad8
Merge branch 'master' into dependabot/npm_and_yarn/express-rate-limit…
ar2rsawseen Oct 10, 2024
6dcfbf9
[push] replaced push with old version
Oct 10, 2024
af199e3
[push] eslint fix
Oct 10, 2024
560c7bb
[push] codacy fix
Oct 10, 2024
4387f03
Merge pull request #5636 from Countly/dependabot/npm_and_yarn/express…
ar2rsawseen Oct 10, 2024
474bb59
Trying different memmory config for cypress
JavierGi Oct 10, 2024
93dc116
Trying different memmory config for cypress
JavierGi Oct 10, 2024
326415a
Adding manual image tagging
JavierGi Oct 10, 2024
af5d638
Adding manual image tagging
JavierGi Oct 10, 2024
396d6ae
Changing cypress run parameyters
JavierGi Oct 10, 2024
42a0906
Updated run step as onboarding
can-angun Oct 11, 2024
432a080
Merge pull request #5664 from Countly/ci-pipeline
ar2rsawseen Oct 11, 2024
437ecb0
Merge branch 'master' into SER-2015-replace-masters-push-with-pre-rec…
ArtursKadikis Oct 17, 2024
d572293
Merge pull request #5659 from Countly/SER-2015-replace-masters-push-w…
ArtursKadikis Oct 17, 2024
8f75fb1
Replaced "Users" with "Sessions" on technology home widgets
ayasayadi1 Oct 18, 2024
f87cbc2
Merge pull request #5691 from Countly/technology-home-widget-issue
Cookiezaurs Oct 18, 2024
12c8d69
[star-rating] Fix consent field
widatama Oct 18, 2024
477ae05
Merge pull request #5694 from Countly/rating-consent
ArtursKadikis Oct 21, 2024
a294fc4
[push] brought back content-availabe property for ios
Oct 22, 2024
7f6d446
[push] guide button and data-test-id
Oct 22, 2024
6fc66f9
Added skip to push notif tests
can-angun Oct 22, 2024
5d9c1a3
Merge pull request #5702 from Countly/skip-push-notif-test-case
can-angun Oct 22, 2024
2b827f9
Merge pull request #5700 from Countly/SER-2105-push-bring-back-conten…
ArtursKadikis Oct 22, 2024
e759f57
Fixing old push issues
ArtursKadikis Oct 23, 2024
9083567
Merge pull request #5703 from Countly/fixing_old_push_issues
ArtursKadikis Oct 23, 2024
a4d28ec
Update CHANGELOG 24.05.16
ArtursKadikis Oct 23, 2024
f5c1065
Merge pull request #5704 from Countly/Changelog_24.05.16
ArtursKadikis Oct 23, 2024
3f13f72
[push] store the error fcm returns even if there's no error mapper
Oct 31, 2024
1bf4f2a
Merge branch 'master' into SER-2112-push-better-error-reporting-for-fcm
ArtursKadikis Oct 31, 2024
ce6190d
Merge pull request #5718 from Countly/SER-2112-push-better-error-repo…
ArtursKadikis Oct 31, 2024
6d5c01d
fetch events to delete from events coll and drill_meta coll
ayasayadi1 Nov 5, 2024
3d518ff
optimised fetching from drill meta
ayasayadi1 Nov 6, 2024
31d9896
eslint
ayasayadi1 Nov 6, 2024
7fd42a0
[SER-2110][fix] button toggle and regex value in edit drawer
John-Weak Nov 6, 2024
c3a4498
return distinct events from drill_meta
ayasayadi1 Nov 6, 2024
d18f458
Merge pull request #5732 from Countly/SER-2118
Cookiezaurs Nov 6, 2024
24f53e1
[fix][SER1-508] "Internal name" required
John-Weak Nov 7, 2024
4633a4d
Adding changelog entry
ArtursKadikis Nov 7, 2024
0072f8c
Merge pull request #5738 from Countly/SER-1508
ArtursKadikis Nov 7, 2024
3afac2b
[push] option to keep push_stats records for each message per user fo…
Nov 7, 2024
2c028bb
Merge branch 'master' into SER-1959-push-storing-apns-and-fcm-respons…
cihadtekin Nov 7, 2024
0370ef6
[push] deepscan: unnecessarily null checked prop
Nov 7, 2024
a29857a
Merge branch 'master' into SER-1959-push-storing-apns-and-fcm-respons…
Nov 7, 2024
ea53cbc
Merge branch 'SER-1959-push-storing-apns-and-fcm-responses-on-old-pus…
Nov 7, 2024
fbe64b6
Merge pull request #5741 from Countly/SER-1959-push-storing-apns-and-…
ArtursKadikis Nov 8, 2024
e817b6f
[push] added README.md
Nov 8, 2024
ccd6155
Merge branch 'master' into push-readme
cihadtekin Nov 8, 2024
f9fa851
Merge pull request #5748 from Countly/push-readme
ArtursKadikis Nov 8, 2024
0e8d0ee
Merge branch 'master' into SER-2110
ArtursKadikis Nov 8, 2024
7e5f888
Adding changelog
ArtursKadikis Nov 8, 2024
dfd37f9
Merge pull request #5733 from Countly/SER-2110
ArtursKadikis Nov 8, 2024
a8c5872
Update CHANGELOG.md for 24.05.17
ArtursKadikis Nov 8, 2024
b13fd02
Merge pull request #5753 from Countly/Changelog_24.05.17
ArtursKadikis Nov 8, 2024
c62b794
add session check to upload
John-Weak Nov 12, 2024
aff4668
changelog
ArtursKadikis Nov 12, 2024
4e18341
Merge pull request #5759 from Countly/johnWeak-master
ArtursKadikis Nov 12, 2024
f7e7c68
Update CHANGELOG.md for 24.05.17
ArtursKadikis Nov 13, 2024
2d55e82
Update CHANGELOG.md
ArtursKadikis Nov 13, 2024
92eb7e5
Merge pull request #5766 from Countly/Changelog_24.05.17v2
ArtursKadikis Nov 13, 2024
fa12054
SER-2127 request body was sent wrongly
coskunaydinoglu Nov 15, 2024
0ede0dd
Updating changelog
ArtursKadikis Nov 15, 2024
4967d33
Changelog
ArtursKadikis Nov 15, 2024
99d2799
body should not be stringified
coskunaydinoglu Nov 15, 2024
b413ef1
Merge branch 'SER-2127-delete-old-members-GOT-issue' of https://githu…
coskunaydinoglu Nov 15, 2024
c8f2574
Merge pull request #5771 from Countly/SER-2127-delete-old-members-GOT…
ArtursKadikis Nov 15, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 14 additions & 7 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,11 @@ on:

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
inputs:
custom_tag:
description: 'Custom Docker tag (optional)'
required: false
default: ''

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
Expand Down Expand Up @@ -74,7 +79,7 @@ jobs:
- 27017:27017

container:
image: countly/countly-core:pipelines-${{ github.base_ref || github.ref_name }}
image: countly/countly-core:pipelines-${{ inputs.custom_tag || github.base_ref || github.ref_name }}
env:
COUNTLY_CONFIG__MONGODB_HOST: mongodb
COUNTLY_CONFIG_API_PREVENT_JOBS: true
Expand Down Expand Up @@ -131,7 +136,7 @@ jobs:
- 27017:27017

container:
image: countly/countly-core:pipelines-${{ github.base_ref || github.ref_name }}
image: countly/countly-core:pipelines-${{ inputs.custom_tag || github.base_ref || github.ref_name }}
env:
COUNTLY_CONFIG__MONGODB_HOST: mongodb
COUNTLY_CONFIG_API_PREVENT_JOBS: true
Expand Down Expand Up @@ -178,7 +183,7 @@ jobs:
- 27017:27017

container:
image: countly/countly-core:pipelines-${{ github.base_ref || github.ref_name }}
image: countly/countly-core:pipelines-${{ inputs.custom_tag || github.base_ref || github.ref_name }}
env:
COUNTLY_CONFIG__MONGODB_HOST: mongodb
COUNTLY_CONFIG_API_PREVENT_JOBS: true
Expand Down Expand Up @@ -231,7 +236,7 @@ jobs:
- 27017:27017

container:
image: countly/countly-core:pipelines-${{ github.base_ref || github.ref_name }}
image: countly/countly-core:pipelines-${{ inputs.custom_tag || github.base_ref || github.ref_name }}
env:
COUNTLY_CONFIG__MONGODB_HOST: mongodb
COUNTLY_CONFIG_API_PREVENT_JOBS: true
Expand Down Expand Up @@ -281,7 +286,8 @@ jobs:
/sbin/my_init &
cd ui-tests
npm install
npm run cy:run:dashboard
xvfb-run --auto-servernum --server-args="-screen 0 1280x1024x24" \
npm run cy:run:dashboard --headless --no-sandbox --disable-gpu --disable-dev-shm-usage

- name: Upload UI tests artifacts
if: ${{ failure() }}
Expand All @@ -308,7 +314,7 @@ jobs:
- 27017:27017

container:
image: countly/countly-core:pipelines-${{ github.base_ref || github.ref_name }}
image: countly/countly-core:pipelines-${{ inputs.custom_tag || github.base_ref || github.ref_name }}
env:
COUNTLY_CONFIG__MONGODB_HOST: mongodb
COUNTLY_CONFIG_API_PREVENT_JOBS: true
Expand Down Expand Up @@ -354,7 +360,8 @@ jobs:
/sbin/my_init &
cd ui-tests
npm install
npm run cy:run:onboarding
xvfb-run --auto-servernum --server-args="-screen 0 1280x1024x24" \
npm run cy:run:onboarding --headless --no-sandbox --disable-gpu --disable-dev-shm-usage

- name: Upload UI tests artifacts
if: ${{ failure() }}
Expand Down
38 changes: 38 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,41 @@
## Version 24.05.XX
Fixes:
- [script] Fixing bug with "delete_old_members" script that led to malformed requests

## Version 24.05.17
Fixes:
- [push] Improved ability to observe push related errors

Enterprise fixes:
- [cohorts] Fixed issues with nightly cleanup
- [data-manager] Fixed UI bug where rules were not visible when editing "Merge by regex" transformations
- [drill] Fixed wrong pie chart label tooltip in dashboard widget
- [flows] Fixed bug in case of null data in schema
- [nps] Fixed bug in the editor where the "internal name" field was not mandatory
- [ratings] Fixed UI bug where "Internal name" was not a mandatory field

Security:
- Fixing minor vulnerability that would allow for unauthorized file upload

Enterprise Features:
- [block] Added a way to filter crashes by their error (stacktrace)

## Version 24.05.16
Fixes:
- [core] Replaced "Users" with "Sessions" label on technology home widgets
- [push] Replaced push plugin with an earlier version of the plugin

Enterprise fixes:
- [license] Fixed bug with MAU type of licenses that would prevent the server from starting
- [nps] Fixed bug where it was possible to submit empty nps surveys
- [ratings] Fixed bug with user consent

Security:
- Bumped cookie-parser from 1.4.6 to 1.4.7
- Bumped express-rate-limit from 7.4.0 to 7.4.1
- Bumped moment-timezone from 0.5.45 to 0.5.46
- Bumped sass from 1.79.3 to 1.79.4

## Version 24.05.15
Enterprise fixes:
- [nps] Fixed UI issues in the widget editor related to the "user consent" section
Expand Down
25 changes: 23 additions & 2 deletions bin/scripts/expire-data/delete_custom_events_regex.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
*/


const { ObjectId } = require('mongodb');
const pluginManager = require('../../../plugins/pluginManager.js');
const common = require('../../../api/utils/common.js');
const drillCommon = require('../../../plugins/drill/api/common.js');
Expand All @@ -25,7 +24,7 @@ Promise.all([pluginManager.dbConnection("countly"), pluginManager.dbConnection("

//GET APP
try {
const app = await countlyDb.collection("apps").findOne({_id: ObjectId(APP_ID)}, {_id: 1, name: 1});
const app = await countlyDb.collection("apps").findOne({_id: countlyDb.ObjectID(APP_ID)}, {_id: 1, name: 1});
console.log("App:", app.name);
//GET EVENTS
var events = [];
Expand All @@ -51,6 +50,27 @@ Promise.all([pluginManager.dbConnection("countly"), pluginManager.dbConnection("
}
]).toArray();
events = events.length ? events[0].list : [];
const metaEvents = await drillDb.collection("drill_meta").aggregate([
{
$match: {
'app_id': app._id + "",
"type": "e",
"e": { $regex: regex, $options: CASE_INSENSITIVE ? "i" : "", $nin: events }
}
},
{
$group: {
_id: "$e"
}
},
{
$project: {
_id: 0,
e: "$_id"
}
}
]).toArray();
events = events.concat(metaEvents.map(e => e.e));
}
catch (err) {
close("Invalid regex");
Expand Down Expand Up @@ -86,6 +106,7 @@ Promise.all([pluginManager.dbConnection("countly"), pluginManager.dbConnection("
close(err);
}


async function deleteDrillEvents(appId, events) {
for (let i = 0; i < events.length; i++) {
var collectionName = drillCommon.getCollectionName(events[i], appId);
Expand Down
5 changes: 2 additions & 3 deletions bin/scripts/member-managament/delete_old_members.js
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ Promise.all([pluginManager.dbConnection("countly")]).spread(function(countlyDb)
Url: SERVER_URL + "/i/users/delete",
body: {
api_key: API_KEY,
args: JSON.stringify({user_ids: [(data._id + "")]})
args: {user_ids: [data._id + ""]}
}
}, function(data) {
if (data.err) {
Expand Down Expand Up @@ -99,8 +99,7 @@ function sendRequest(params, callback) {
const options = {
uri: url.href,
method: params.requestType,
json: true,
body: body,
json: body,
strictSSL: false
};

Expand Down
4 changes: 4 additions & 0 deletions frontend/express/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -603,6 +603,10 @@ Promise.all([plugins.dbConnection(countlyConfig), plugins.dbConnection("countly_
app.use(function(req, res, next) {
var contentType = req.headers['content-type'];
if (req.method.toLowerCase() === 'post' && contentType && contentType.indexOf('multipart/form-data') >= 0) {
if (!req.session?.uid || Date.now() > req.session?.expires) {
res.status(401).send('Unauthorized');
return;
}
var form = new formidable.IncomingForm();
form.uploadDir = __dirname + '/uploads';
form.parse(req, function(err, fields, files) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<div class="version-graph-block bu-p-3" :data-test-id="`cly-section-${item.title.toLowerCase().replaceAll(/\s/g, '-')}-item-${idx2}`">
<div class="bu-columns version-graph-title">
<div class="bu-column" :data-test-id="`cly-section-${item.title.toLowerCase().replaceAll(/\s/g, '-')}-item-${idx2}-name`">{{item2.name}}</div>
<div class="bu-column" :data-test-id="`cly-section-${item.title.toLowerCase().replaceAll(/\s/g, '-')}-item-${idx2}-value`">{{formatNumber(item2.value)}} {{item2.value > 1 ? 'Users' : 'User'}}<span class="divider" :data-test-id="`cly-section-${item.title.toLowerCase().replaceAll(/\s/g, '-')}-item-${idx2}-divider`"> | </span><span :data-test-id="`cly-section-${item.title.toLowerCase().replaceAll(/\s/g, '-')}-item-${idx2}-percent`">{{item2.percent}}% </span></div>
<div class="bu-column" :data-test-id="`cly-section-${item.title.toLowerCase().replaceAll(/\s/g, '-')}-item-${idx2}-value`">{{formatNumber(item2.value)}} {{item2.value > 1 ? i18n('common.sessions') : i18n('common.session')}}<span class="divider" :data-test-id="`cly-section-${item.title.toLowerCase().replaceAll(/\s/g, '-')}-item-${idx2}-divider`"> | </span><span :data-test-id="`cly-section-${item.title.toLowerCase().replaceAll(/\s/g, '-')}-item-${idx2}-percent`">{{item2.percent}}% </span></div>
</div>
<cly-progress-bar :data-test-id="`cly-section-${item.title.toLowerCase().replaceAll(/\s/g, '-')}-item-${idx2}-progress-bar`" :entities="item2.bar" :height=8></cly-progress-bar>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -255,6 +255,8 @@ common.selected-with-count ={0} Selected
common.selected = Selected
common.select-all-with-count = Select all {0}
common.deselect = Deselect
common.session = Session
common.sessions = Sessions

#vue
common.undo = Undo
Expand Down
44 changes: 20 additions & 24 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
"bunyan": "1.8.15",
"colors": "1.4.0",
"connect-flash": "0.1.1",
"cookie-parser": "1.4.6",
"cookie-parser": "1.4.7",
"countly-request": "file:api/utils/countly-request",
"countly-root": "file:api/utils/countly-root",
"countly-sdk-nodejs": "*",
Expand All @@ -50,7 +50,7 @@
"ejs": "3.1.10",
"errorhandler": "1.5.1",
"express": "4.21.0",
"express-rate-limit": "7.4.0",
"express-rate-limit": "7.4.1",
"express-session": "1.18.0",
"form-data": "^4.0.0",
"formidable": "2.1.1",
Expand All @@ -75,15 +75,15 @@
"mcc-mnc-list": "1.1.11",
"method-override": "3.0.0",
"moment": "2.30.1",
"moment-timezone": "0.5.45",
"moment-timezone": "0.5.46",
"mongodb": "4.9.1",
"nginx-conf": "2.1.0",
"nodemailer": "6.9.15",
"object-hash": "3.0.0",
"offline-geocoder": "git+https://github.com/Countly/offline-geocoder.git",
"properties-parser": "0.6.0",
"puppeteer": "17.1.3",
"sass": "1.79.3",
"sass": "1.79.4",
"tslib": "^2.6.3",
"uglify-js": "3.19.3",
"underscore": "1.13.7",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1131,11 +1131,12 @@
}
if (doc.actionType === 'EVENT_MERGE' && doc.isRegexMerge === true) {
doc.actionType = 'merge-regex';
doc.eventTransformTargetRegex = doc.transformTarget[0];
}
else {
doc.actionType = doc.actionType.split('_')[1].toLowerCase();
}
doc.isExistingEvent = 'true';
doc.isExistingEvent = doc.isExistingEvent ? 'true' : 'false';
// doc.tab;
// delete doc.transformType;
doc.name = countlyCommon.unescapeHtml(doc.name);
Expand Down
12 changes: 12 additions & 0 deletions plugins/push/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Countly Push Plugin

These URLs need to be accessible by the Countly instance:

- for Android:
- fcm.googleapis.com
- accounts.google.com
- for IOS:
- api.development.push.apple.com
- api.push.apple.com
- for Huawei
- push-api.cloud.huawei.com
Loading
Loading