rolling-scopes / rsschool-app

An application for the RS School education process
https://app.rs.school
Mozilla Public License 2.0
9.92k stars 205 forks source link

Show correct eligible students amount #2474

Closed AlreadyBored closed 4 months ago

AlreadyBored commented 4 months ago

🟢 Add deploy label if you want to deploy this Pull Request to staging environment

🧑‍⚖️ Pull Request Naming Convention


🤔 This is a ...

🔗 Related issue link

https://github.com/rolling-scopes/rsschool-app/issues/2473

💡 Background and solution

If amount of eligible students is greater than 100% => it should be 100% (as alternative solution we can show amount of eligible students vs all students, but I think it doesn't make much sense)

☑️ Self Check before Merge

⚠️ Please check all items below before review. ⚠️

github-actions[bot] commented 4 months ago

📦 Next.js Bundle Analysis for client

This analysis was generated by the Next.js Bundle Analysis action. 🤖

🎉 Global Bundle Size Decreased

Page Size (compressed)
global 111.02 KB (-1 B)
Details

The global bundle is the javascript bundle that loads alongside every page. It is in its own category because its impact is much higher - an increase to its size means that every page on your website loads slower, and a decrease means every page loads faster.

Any third party scripts you have added directly to your app using the <script> tag are not accounted for in this analysis

If you want further insight into what is behind the changes, give @next/bundle-analyzer a try!

One Page Changed Size

The following page changed size from the code in this PR compared to its base branch:

Page Size (compressed) First Load % of Budget (500 KB)
/course/stats 289.52 KB 400.53 KB 80.11% (+/- <0.01%)
Details

Only the gzipped size is provided here based on an expert tip.

First Load is the size of the global bundle plus the bundle for the individual page. If a user were to show up to your website and land on a given page, the first load size represents the amount of javascript that user would need to download. If next/link is used, subsequent page loads would only need to download that page's bundle (the number in the "Size" column), since the global bundle has already been downloaded.

Any third party scripts you have added directly to your app using the <script> tag are not accounted for in this analysis

The "Budget %" column shows what percentage of your performance budget the First Load total takes up. For example, if your budget was 100kb, and a given page's first load size was 10kb, it would be 10% of your budget. You can also see how much this has increased or decreased compared to the base branch of your PR. If this percentage has increased by 5% or more, there will be a red status indicator applied, indicating that special attention should be given to this. If you see "+/- <0.01%" it means that there was a change in bundle size, but it is a trivial enough amount that it can be ignored.

valerydluski commented 4 months ago

Are you sure that the problem is not on the backend side?

AlreadyBored commented 4 months ago

Are you sure that the problem is not on the backend side?

@valerydluski I thought about it, but I am not sure that proper option is to change eligible students calculation on BE, as we may still need overall eligible students amount on FE. But if you are sure that this is the only application of this value, then I can adjust BE calculation

valerydluski commented 4 months ago

@AlreadyBored add a filter for active students here. https://github.com/rolling-scopes/rsschool-app/blob/master/nestjs/src/courses/stats/course-stats.service.ts#L57

github-actions[bot] commented 4 months ago

📦 Next.js Bundle Analysis for client

This analysis was generated by the Next.js Bundle Analysis action. 🤖

🎉 Global Bundle Size Decreased

Page Size (compressed)
global 111.02 KB (-1 B)
Details

The global bundle is the javascript bundle that loads alongside every page. It is in its own category because its impact is much higher - an increase to its size means that every page on your website loads slower, and a decrease means every page loads faster.

Any third party scripts you have added directly to your app using the <script> tag are not accounted for in this analysis

If you want further insight into what is behind the changes, give @next/bundle-analyzer a try!