Core Team Management issueshttps://git.startinblox.com/management/core-team/-/issues2024-03-25T15:27:15+01:00https://git.startinblox.com/management/core-team/-/issues/19Roadmap 20242024-03-25T15:27:15+01:00Sylvain Le BonRoadmap 2024# Application improvements
## Improvement of existing solution -> backend
* Permissions on file upload a few days of work
## Mobile experience -> backend and client-side
* Mobile notifications
* UX and offline caching
* Responsivité
...# Application improvements
## Improvement of existing solution -> backend
* Permissions on file upload a few days of work
## Mobile experience -> backend and client-side
* Mobile notifications
* UX and offline caching
* Responsivité
* Acceptable Performance
## New bloxes -> It is a product question
* Catalog of products
* CRM
* To be completed by @sylvain and @Louis.csn
## Template component refactor -> client-side
* Rendering improvement
* Configuration capabilities
* Deeper integration of LitElement
* Ease implementation of custom components
* Start with solid-display, solid-list and solid-map
## Decentralized registry -> backend and client
* Blox registry/data-source registry
* Shape index
* Decentralized requests
* Decentralized server index
* Core and djangoldp are impacted
## Application deployment -> DevOps
* Update all the production applications to last djangoldp version
* Clean and remove outdated apps
* Update of the Ansible deployment platform to manage our existing apps
# Deployment and ecosystem integration
## EDC connector -> backend
* Architecture proposal positioning Startin'blox in IDSA and Gaia X
* OIDC provider plugin for EDC
* EDC plugin setting Access control policies
* Demo app
## Standard convergence -> backend and client-side
* Participation to standard working group + PoC implementations
* Beckn support
* DID/VC + OIDC4VC
* Mini apps and PWA
## App builder -> Client-side and infrastructure
* Integration with the EDC connector
* Data model negotiation : shapes and auto generation of models
## Ontology mapping toolset -> backend
* Supported by Sargasso: automatic tool to expose refined and LDP compliant APIs
-> 2/3 months
## Onboarding
* Support generation and validation of DID/VC in Gxfs
* Support of data certification workflows
-> 2/3 months
# Infrastructure improvements
## Containerization
* Switch to docker and Kubs
* Provide demo appshttps://git.startinblox.com/management/core-team/-/issues/18Serverside Performance Epic: Updated for June 20222022-06-22T13:43:07+02:00Calum MackervoyServerside Performance Epic: Updated for June 2022## Overview
I'm creating this issue to provide a state-of-play on the performance investigations in DjangoLDP as they are to date, how they've improved, findings that are still relevant and areas we're aware still need improving. As we ...## Overview
I'm creating this issue to provide a state-of-play on the performance investigations in DjangoLDP as they are to date, how they've improved, findings that are still relevant and areas we're aware still need improving. As we develop this track, we can keep it up-to-date with new findings and improvements made
## References
* [This previous performance epic](https://git.startinblox.com/management/core-team/-/issues/2)
* [This report on serverside performance dating from 08/2020](https://docs.google.com/document/d/1DOBKF825Pb4H77Fl5JesJq9FoNtYMRnfe_OB-U974TM/edit#heading=h.d1ctnjq1e1hd)
* [Spreadsheet of results which accompany the report](https://docs.google.com/spreadsheets/d/1zg0IQ14AAvvpIt93jjgFe98eoQw41E00v33RgM98Ifg/edit#gid=1917462099)
* a number of performance tests can be found spread across various issues in various repos where discussions with clients were happening on how to improve. Unfortunately we didn't centralise where these were stored but I'll try to find what I can
## Test Methodologies
* We set up local and staging servers to use fixtures and generated test data. We wrote [this test data generation script](https://git.startinblox.com/djangoldp-packages/djangoldp/-/blob/master/djangoldp/tests/scripts/prod_data_generator.py) which creates (500) users and (500) projects and spreads the users between the projects randomly as members
* [See here the 'instructions to reproduce' for setting up a local environment with test data](https://docs.google.com/document/d/1DOBKF825Pb4H77Fl5JesJq9FoNtYMRnfe_OB-U974TM/edit#heading=h.c3ogk5tiv1jj)
* We used `cProfile` which gives a verbose output of function calls and time elapsed in each call. This I found to be excessively granular in general, but provides a useful way to identify the main pain points and to squeeze out some micro-optimisations in certain functions (to be honest what we need right now are the big improvements)
* We wrote our own less granular profiling code by [using timers (link to branch code)](https://git.startinblox.com/djangoldp-packages/djangoldp/blob/bb4d7f99fb365c765f1ad8078b9dcd279035520a/djangoldp/views.py#L396)
* Using Django silk
* Measuring the global "timing" tab during requests to the API, and in using client-side applications manually
* We [compared the performance to mock solutions which weren't using djangoldp features](https://docs.google.com/document/d/1DOBKF825Pb4H77Fl5JesJq9FoNtYMRnfe_OB-U974TM/edit#heading=h.55n2e0gj4d4u)
## Existing findings
* Serialization is expensive (profiling found that most of the time was spent in `to_representation`). We found that the growth was exponential - O(N^2) with each layer of nesting on the serialized resource. Serializing time grows linearly with the number of resources
* Pagination changed serialization so that it remains constant O(1) with added rows (tied to page size). See below
## Existing suggestions
### Serializing grows with the number of fields on a resource
* https://git.startinblox.com/djangoldp-packages/djangoldp/-/issues/400
### Serializing permissions on every resource is expensive
The permissions in Solid [follow a WebACL approach](https://git.startinblox.com/documentation/specifications/-/issues/8#note_61292), where permissions are serialized for every resource explicitly. There is an [open MR](https://git.startinblox.com/djangoldp-packages/djangoldp/-/merge_requests/224) in djangoldp which changes our behaviour so that we're not doing this for every resource, only on the containers
Note that this is just about _serializing_ permissions. The object-level permissions are applied by using [this generic filter backend](https://git.startinblox.com/djangoldp-packages/djangoldp/-/blob/master/djangoldp/filters.py#L6)
### Filtering on object-level permissions
* Django-Guardian is a dependency of djangoldp, [introduced during an early refactor of the permissions system](https://git.startinblox.com/djangoldp-packages/djangoldp/-/issues/197). In conventional Django coding, object-level permissions might be expensive, compared to applying permissions classes to specific views. I think that the idea was to have one generic permissions class and have "agents" (listeners) apply changes to object permissions which would allow for a more WebACL approach. In reality object-level permissions are hardly used in package code and most package developers are writing custom permissions classes for their models
* The `LDListMixin` [applies filtering to the model it contains](https://git.startinblox.com/djangoldp-packages/djangoldp/-/blob/master/djangoldp/serializers.py#L217). This duplicates the work of a `FilterBackend`, but it does it because many of the containers being served won't be on the parent queryset, but on a nested field (e.g. `user.circles`). It's [also an issue because in the future a container should be able to have many kinds of object](https://git.startinblox.com/djangoldp-packages/djangoldp/-/issues/373)
### Pagination
Pagination improves the performance of serialization with increasing records by making the performance constant O(1)
In Linked Data it's a little more complex for the front-end because of the decentralised nature of applications (especially around ordering) and we had informally estimated we'd need around 5 000 € to complete the feature. [In the backend it's already supported](https://git.startinblox.com/djangoldp-packages/djangoldp/-/blob/master/djangoldp/pagination.py)
### Cache
Caching improves the performance of serialization on subsequent requests on a resource. The initial issue demonstrated positive results (I think this is buried in a client issue somewhere). There's an [open issue](https://git.startinblox.com/djangoldp-packages/djangoldp/-/issues/398) to replace the use of a custom cache and instead tying it into Django's inbuilt cache system
### Database pre-fetch
We implemented a [pre-fetch mechanism](https://git.startinblox.com/djangoldp-packages/djangoldp/-/merge_requests/179) which speeds up database queries by making one (full) query which will provide the data we need for all subsequent queries (during serialization) ([initial results](https://git.startinblox.com/applications/hubl/issues/813#note_40965))
### Compression
[We implemented standard compression by default in requests](https://git.startinblox.com/djangoldp-packages/djangoldp/issues/271). This improved the file size and download time of responses to browserhttps://git.startinblox.com/management/core-team/-/issues/17Blox Customization2021-05-06T16:31:42+02:00Matthieu Fesseliermatthieu@startinblox.comBlox Customization## Summary
We need to find a generic solution to customize our bloxes easily. This includes:
- the front-end: how can we make a component behave differently between 2 apps
- the back-end: how can we add specific data/edit some data betw...## Summary
We need to find a generic solution to customize our bloxes easily. This includes:
- the front-end: how can we make a component behave differently between 2 apps
- the back-end: how can we add specific data/edit some data between 2 apps
## Related issues in Core Projects
none
## Customers waiting for it
* Passerelles
* Needle
## Expected delivery date
none
## Related milestones
none
/cc @balessan @sylvain @calummackervoy @jbpasquier @sylvainlehmannhttps://git.startinblox.com/management/core-team/-/issues/16Trust2021-08-23T21:45:55+02:00Calum MackervoyTrustSee the [roadmap](https://docs.google.com/document/d/1t3PTKuJ8V4zBJ7XIF_I5cHLvn63_mnkJt_jaL5A_k-k/edit#heading=h.5ob5m0yw42jr). In my call with @plup this morning I said I'd compile an epic which detailed the backend issues related to th...See the [roadmap](https://docs.google.com/document/d/1t3PTKuJ8V4zBJ7XIF_I5cHLvn63_mnkJt_jaL5A_k-k/edit#heading=h.5ob5m0yw42jr). In my call with @plup this morning I said I'd compile an epic which detailed the backend issues related to this. @balessan or @matthieu if either of you could help me by linking the front-end issues which I miss then we'll have a complete picture
## Data access grants
* @sylvainLlop has been working on the repository [djangoldp-data-access-grants](https://git.startinblox.com/djangoldp-packages/djangoldp-access-grants)
* The work is defined by these issues I think: https://git.startinblox.com/applications/trust/interop-hubl/issues
* There are static modelisation of everything here [https://git.startinblox.com/applications/trust/interop-hubl](https://git.startinblox.com/applications/trust/interop-hubl/)
* And sequence diagrams presenting the specification workflows here: https://git.startinblox.com/documentation/specifications/issues/4 (ping @SylvainLlop it should be useful for you)
### Data access grants dashboard
* @matthieu has been working on the repository [Solid data dashboard](https://git.startinblox.com/applications/trust/solid-data-dashboard)
* Invision mockups by @sophie for inspiration are here: https://projects.invisionapp.com/d/main#/projects/prototypes/20906437
## DPoP / Solid-OIDC
The roadmap originally talks about Proof-of-possession but this has quickly evolved to be an implementation of Solid-OIDC
* original issue planning this: https://git.startinblox.com/infra/security/issues/28
* OP-side: https://git.startinblox.com/djangoldp-packages/django-webidoidc-provider/issues/2
* RS-side: https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/70
* RP-side: https://git.startinblox.com/framework/sib-auth/issues/41
### Compatibility
* re-integrate the ability to login using another IdP (front-end)
* https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/73
* https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/45
## Isolation of web components
## S2S data exchange
* https://git.startinblox.com/djangoldp-packages/djangoldp/issues/236 with related issues:
* https://git.startinblox.com/djangoldp-packages/djangoldp/issues/372
* https://git.startinblox.com/djangoldp-packages/djangoldp/issues/254
* https://git.startinblox.com/infra/security/issues/32
## Investigating the use of shex/shacl to generate models
* https://git.startinblox.com/djangoldp-packages/djangoldp/issues/156 with identified alternative:
* https://git.startinblox.com/djangoldp-packages/djangoldp/issues/3672021-03-31https://git.startinblox.com/management/core-team/-/issues/15Good onboarding issues2021-02-22T14:21:05+01:00Calum MackervoyGood onboarding issues* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/347
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/324
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/236
* [ ] Trust iss...* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/347
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/324
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/236
* [ ] Trust issue (TODO @balessan )https://git.startinblox.com/management/core-team/-/issues/14LDPSerializer collection2021-02-17T19:44:41+01:00Calum MackervoyLDPSerializer collection`djangoldp.serializers.LDPSerializer` (or `LDPModelSerializer`, as it might be renamed) has many issues open, many of them bugs. Here I will list and categorise them
### Priority Bugs
* [ ] https://git.startinblox.com/djangoldp-package...`djangoldp.serializers.LDPSerializer` (or `LDPModelSerializer`, as it might be renamed) has many issues open, many of them bugs. Here I will list and categorise them
### Priority Bugs
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/341 (djangoldp-invoice feature is waiting on this)
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/326
### Behaviour
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/344
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/333
* [X] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/329
* [X] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/328
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/363
### Error handling
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/345
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/346
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/226
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/359
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/360
### Compatibility with LDP/Solid specs
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/342
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/348
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/349
### Tight Coupling with LDPViewSet
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/277
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/323
### Feature Requests
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/321
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/239 (low priority)https://git.startinblox.com/management/core-team/-/issues/13DjangoLDP Refactor2022-07-07T14:04:37+02:00Calum MackervoyDjangoLDP RefactorIn this issue I'd like to review the potential scope for a major refactor of DjangoLDP. I think on balance this could save us a lot of time & money in future. With the recent changes from @plup taking us in a radical new direction it's a...In this issue I'd like to review the potential scope for a major refactor of DjangoLDP. I think on balance this could save us a lot of time & money in future. With the recent changes from @plup taking us in a radical new direction it's a good time to look at changes to the foundations
### Automatic vs Easy-to-Extend
I think that there is a general conflict in DjangoLDP between two design requirements
* "everything should be automatic"
* "everything should be easy to extend"
At the moment it feels like we're not quite achieving either. I think the synthesis of the two directions is achieved well by Django Rest Framework, and we largely don't support the structures which it uses to achieve this
* [ ] Supporting non-automatic but user-friendly use of `LDPSerializer` (https://git.startinblox.com/djangoldp-packages/djangoldp/issues/277)
* [x] `LDPView` extending `APIView` (https://git.startinblox.com/djangoldp-packages/djangoldp/issues/282)
These changes may implicate that no ViewSet should be automatically registered as a URL unless the model explicitly configures `view_set` in its' `Meta`. If it doesn't, it should be assumed that it is being accessed via its' own views, as with Django
Sometimes the automatic requirement is also in conflict with "everything should perform well" (https://git.startinblox.com/djangoldp-packages/djangoldp/issues/299). By separating the serializer we are resolving this conflict for the case of filtering query-sets
#### Nested Fields
Most of the bugs I come across in the serializer are relating to nested fields, particularly with POST/PUT. This is also a feature of DRF's `ModelSerializer`, and it's important for making things automatic, so I'm not sure if anything can be done about it. 8h of budget has already been released to add a lot more tests, so this should be a focus of that effort
* https://git.startinblox.com/djangoldp-packages/djangoldp/issues/199
### Tight coupling between View, Model and Serializer
Not totally addressed by the suggestions above
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/278
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/323
### URLs
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/324
### DjangoLDP Permissions
I recently opened an issue for a permissions refactor (#305 ) which has an open merge request
* [X] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/305
There are still some open issues relating to permissions, but these are bugs/feature requests rather than suggestions for refactoring:
* https://git.startinblox.com/djangoldp-packages/djangoldp/issues/172
* https://git.startinblox.com/djangoldp-packages/djangoldp/issues/291
* https://git.startinblox.com/djangoldp-packages/djangoldp/issues/295
### DjangoLDP Filters
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/325
### DjangoLDP Admin
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/322
### Documentation
Many of these issues raise the subject of documentation. DjangoLDP's documentation is currently stored in 3 places: we have some guides on setting up a sib-server, some docs in the README and some guides in the Wiki
There's an issue open to move the Wiki guides to the main documentation repo
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/279
We may also want to have more extensive documentation on DjangoLDP as a whole, particularly as we've diverged from Django & Django Rest Framework in a few wayshttps://git.startinblox.com/management/core-team/-/issues/11Router refactoring2020-06-03T14:01:48+02:00Matthieu Fesseliermatthieu@startinblox.comRouter refactoring## Summary
We would like to refactor the router to fix different issues we found no easy way to solve.
These issues are mostly related to the way the views are activated, and how the nested views are handled.
## Lead Dev(s)
?
## Re...## Summary
We would like to refactor the router to fix different issues we found no easy way to solve.
These issues are mostly related to the way the views are activated, and how the nested views are handled.
## Lead Dev(s)
?
## Related issues in Core Projects
* [ ] https://git.startinblox.com/framework/sib-router/issues/64
* [ ] https://git.startinblox.com/framework/sib-router/issues/62
* [ ] https://git.startinblox.com/framework/sib-core/issues/566
## Customers waiting for it
* Hubl
## Related issues in the associated project (if any)
* [ ] https://git.startinblox.com/applications/hubl/issues/420
## Expected delivery date
?
## Related milestones
?
/cc @balessanhttps://git.startinblox.com/management/core-team/-/issues/10Monitoring and quality2024-02-22T16:16:30+01:00Benoit Alessandronibenoit@startinblox.comMonitoring and quality## Summary
We should improve the monitoring of our applications and of the framework, check the code quality and ensure we have proper error loggings.
Different tools could help:
* Sentry as already proposed could help on the applicati...## Summary
We should improve the monitoring of our applications and of the framework, check the code quality and ensure we have proper error loggings.
Different tools could help:
* Sentry as already proposed could help on the application side to get proper error logging
* I will test it on the Knowledge Base
* Enabling Code quality check using Code Climate or comparable tools would be a nice addition to the CI pipeline
* We need to be able to add that to any push on our repositories
* We need to be able to access the reports in a html of pdf format
* Exists in Gitlab Enterprise Edition: https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html
* Seems to be possible to implement in the Community Edition:
* https://gitlab.com/gitlab-org/gitlab-foss/-/issues/55567
* https://git.metabarcoding.org/help/ci/examples/code_climate.md
* https://gitlab.com/frakman1/codeclimate-test/blob/master/.gitlab-ci.yml
* Enabling project templates could also greatly help applications developers to get faster in production. Idea would be to provide at least:
* A fully configured djangoldp project template
* A fully configured webcomponent project template
* Add activable logs in critical parts of the core
* Help app developers to deactivate parts of their app to isolate issues
## Lead Dev(s)
@balessan
## Related issues in Core Projects
* [ ] https://git.startinblox.com/framework/sib-core/issues/
## Customers waiting for it
* Coopstarter Knowledge Base
* FNK (they don't know it yet)
* ...
## Related issues in the associated project (if any)
* [ ] [Issue 1 with associated link]()
## Expected delivery date
* ASAP
## Related milestones
* Milestone in sib-core
* Milestone in customer project
/cc @balessanBenoit Alessandronibenoit@startinblox.comBenoit Alessandronibenoit@startinblox.comhttps://git.startinblox.com/management/core-team/-/issues/9Store choice2021-01-11T16:02:47+01:00Matthieu Fesseliermatthieu@startinblox.comStore choice## Summary
We want to move from our custom and temporary store, to a new one. The current options are:
- [LDFlex](https://github.com/LDflex/LDflex): LDflex is a domain-specific language for querying Linked Data on the Web as if you wer...## Summary
We want to move from our custom and temporary store, to a new one. The current options are:
- [LDFlex](https://github.com/LDflex/LDflex): LDflex is a domain-specific language for querying Linked Data on the Web as if you were browsing a local JavaScript graph.
- [rdflib.js](https://github.com/linkeddata/rdflib.js/): Javascript RDF library for browsers and Node.js.
- [TripleDoc](https://gitlab.com/vincenttunru/tripledoc): Tripledoc was designed specifically to read some data from RDF Documents.
- [link-lib](https://github.com/fletcher91/link-lib): This package aims to make building rich web applications quick and easy by providing all the tools needed to work with linked data, providing high-level API's for view rendering, data querying & manipulation, and API communication.
The ultimate goal is to remove completely the store logic from the core and use an external one in our mixins.
## Lead Dev(s)
@matthieu
## Related issues in Core Projects
* [ ] https://git.startinblox.com/framework/sib-core/issues/585
* [ ] https://git.startinblox.com/framework/sib-core/issues/602
## Customers waiting for it
* SIB Core
## Related issues in the associated project (if any)
None
## Expected delivery date
* Provide a date
## Related milestones
* framework/sib-core%0.11
/cc @balessanMatthieu Fesseliermatthieu@startinblox.comMatthieu Fesseliermatthieu@startinblox.comhttps://git.startinblox.com/management/core-team/-/issues/8Search and filtering improvement2020-06-02T09:19:48+02:00Benoit Alessandronibenoit@startinblox.comSearch and filtering improvement## Summary
Improving the search and filtering feature provided out-of-the-box by the framework
## Lead Dev(s)
@clement
## Related issues in Core Projects
| issue | spec | MR |
| ----- | ---- | -- |
| [#442 Search by set](https://gi...## Summary
Improving the search and filtering feature provided out-of-the-box by the framework
## Lead Dev(s)
@clement
## Related issues in Core Projects
| issue | spec | MR |
| ----- | ---- | -- |
| [#442 Search by set](https://git.startinblox.com/framework/sib-core/issues/442) |
| [#379 filter with multiple values](https://git.startinblox.com/framework/sib-core/issues/379) |
| [#358 separate sib-form](https://git.startinblox.com/framework/sib-core/issues/358) | https://git.startinblox.com/framework/sib-core/issues/358#note_26895
| [#357 Alterto Guteres](https://git.startinblox.com/framework/sib-core/issues/357) |
| [#627 Order-by-relevance](https://git.startinblox.com/framework/sib-core/issues/627) |
| [#192 Do comparison in widgets](https://git.startinblox.com/framework/sib-core/issues/192) |
| [#135 Images blink](https://git.startinblox.com/framework/sib-core/issues/135) |
## What do we need here ?
Still needing some specifications.
Overall topic is:
* Separating the form search from the filtered sib-display
* Improving the search feature itself by injecting some fuzzy search mechanism
## Customers waiting for it
* Coopstarter Knowledge Base
* FNK
* Rise For
## Related issues in the associated project (if any)
* [ ] https://git.startinblox.com/applications/knowledge-base/knowledgebase-front/issues/33
* [ ] https://git.startinblox.com/applications/knowledge-base/knowledgebase-front/issues/34
* [ ] https://git.startinblox.com/applications/sib-app/issues/273
* [ ] https://git.startinblox.com/applications/sib-app/issues/156
## Expected delivery date
* Provide a date
## Related milestones
* https://git.startinblox.com/applications/sib-app/-/milestones/20
/cc @balessanClémentClémenthttps://git.startinblox.com/management/core-team/-/issues/7Framework general improvement2020-07-28T10:40:44+02:00Benoit Alessandronibenoit@startinblox.comFramework general improvement## Summary
This issue is oriented towards tooling, browser support, anticipating dependencies issues and so on.
## Lead Dev(s)
@clement
## Related issues in Core Projects
* [x] https://git.startinblox.com/framework/sib-core/issues/5...## Summary
This issue is oriented towards tooling, browser support, anticipating dependencies issues and so on.
## Lead Dev(s)
@clement
## Related issues in Core Projects
* [x] https://git.startinblox.com/framework/sib-core/issues/588
* [ ] https://git.startinblox.com/framework/sib-core/issues/593
* [x] https://git.startinblox.com/framework/sib-core/issues/582
* [ ] https://git.startinblox.com/framework/sib-core/issues/501
* [ ] https://git.startinblox.com/framework/sib-core/issues/499
* [ ] https://git.startinblox.com/framework/sib-core/issues/466
* [ ] https://git.startinblox.com/framework/sib-core/issues/422
* [ ] https://git.startinblox.com/framework/sib-core/issues/429
* [ ] https://git.startinblox.com/framework/sib-core/issues/505
## Customers waiting for it
### Browser support information:
* Coopstarter Knowledge Base
* United4Earth / Rise For
## Expected delivery date
* Provide a date
## Related milestones
* Milestone in sib-core
/cc @balessanClémentClémenthttps://git.startinblox.com/management/core-team/-/issues/4Authentication investigation2021-05-03T17:00:55+02:00Benoit Alessandronibenoit@startinblox.comAuthentication investigation## Summary
Ensure that the WEBID-OIDC workflow is implemented properly on both client and server side
## Lead Dev(s)
@clement
## Related issues in Core Projects
* [x] https://git.startinblox.com/framework/sib-auth/issues/30
* [x] ht...## Summary
Ensure that the WEBID-OIDC workflow is implemented properly on both client and server side
## Lead Dev(s)
@clement
## Related issues in Core Projects
* [x] https://git.startinblox.com/framework/sib-auth/issues/30
* [x] https://git.startinblox.com/framework/sib-core/issues/595
* [ ] https://git.startinblox.com/framework/sib-auth/issues/32
* [x] https://git.startinblox.com/framework/sib-auth/issues/28
## Customers waiting for it
* FNK
## Related issues in the associated project (if any)
* [ ] https://git.startinblox.com/applications/sib-app/issues/472
* [ ] https://git.startinblox.com/applications/sib-app/issues/445
* [x] https://git.startinblox.com/applications/sib-app/issues/400
* [x] https://git.startinblox.com/applications/sib-app/issues/382
## Expected delivery date
* Provide a date
## Related milestones
* Milestone in sib-core
* Milestone in customer project
/cc @balessanClémentClémenthttps://git.startinblox.com/management/core-team/-/issues/3Federation support2021-05-25T15:23:56+02:00Benoit Alessandronibenoit@startinblox.comFederation support## Summary
Provide proper federation mechanism which supports listing and distant authentication/access rights management
A useful user story of federation: https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/43
##...## Summary
Provide proper federation mechanism which supports listing and distant authentication/access rights management
A useful user story of federation: https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/43
## Lead Dev(s)
@calummackervoy
## First Sprint - Joining/Leaving Distant Circles
In this version I am able to join/leave public circles, and send messages to other people in the chat
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/202
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/210
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/215
* [x] https://git.startinblox.com/applications/sib-app/issues/324
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/219
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp-circle/issues/3
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp-circle/issues/4
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp-notification/issues/24
* [x] https://git.startinblox.com/infra/prosody-modules/issues/11
* [x] https://git.startinblox.com/applications/sib-app/issues/505
* [x] https://git.startinblox.com/applications/sib-app/issues/493
### Delivery
* 7th May
## Production-ready version
I am able to add distant users to my container
* [x] https://git.startinblox.com/applications/sib-app/issues/323
* [x] https://git.startinblox.com/applications/sib-app/issues/322
* [x] https://git.startinblox.com/applications/sib-app/issues/272
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp-circle/issues/2
Backlinks for updated resources (e.g. I have changed the owner of my circle)
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/238
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/196
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/232
Key things for a robust solution
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/309
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/310
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp-notification/issues/22
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/167
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/224
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/228
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/229
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/234
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/249
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/262
* [x] Documentation!
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/304
### Delivery
* 2nd June
## Required for compatibility; support for third-party consumers
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/250
* [ ] I am able to GET activities on an inbox
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/233
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/231
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/284
* [ ] activities may be sent in other formats (testing)
## OIDC provider login
* [x] fixing dependency issue (unmaintained library)
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/40 This is completed but needs testing. Had some unexpected behaviour reported
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/38
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/42
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/41
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/45
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/46
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/47
### Delivery
* TBD
## Security
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/49
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/235
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/236
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/254
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/372
Nice to have
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/283
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/230
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp-account/issues/48
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/391
## Customers waiting for it
* FNK
* Coopstarter Knowledge Base
* Rise-for
/cc @balessanCalum MackervoyCalum Mackervoyhttps://git.startinblox.com/management/core-team/-/issues/2Performance investigation2022-06-22T13:39:28+02:00Benoit Alessandronibenoit@startinblox.comPerformance investigation## Summary
We need to improve as much as possible the performance on Startinblox so that Orbit is usable enough to be sold eveywhere.
## Lead Dev(s)
@matthieu @calummackervoy @balessan
## Startup time
* [ ] Configuration of Skypack
...## Summary
We need to improve as much as possible the performance on Startinblox so that Orbit is usable enough to be sold eveywhere.
## Lead Dev(s)
@matthieu @calummackervoy @balessan
## Startup time
* [ ] Configuration of Skypack
* [ ] Time before authentication
* caching looks ok
## Data loading time
* [ ] Projects/circles/users loaded one by one on Orbit
* [ ] How can we use server side pagination? https://git.startinblox.com/framework/sib-core/issues/447
* Total data transfer on startup looks ok
* Server response time on these requests looks ok
* Memory usage before component activation looks ok (60MB)
* How can we deal with federations? What's the maximum reasonable number of servers?
## Component specific performances
* [ ] Delay before first display of directory not acceptable. ~~Too many requests~~ -> https://git.startinblox.com/blox/profile-directory/issues/7
* [x] Memory usage of solid-xmpp-chat not acceptable
## Other core specific issues
* [ ] https://git.startinblox.com/framework/sib-core/issues/694 -> Insights related
* [x] https://git.startinblox.com/framework/sib-core/issues/611
* [x] https://git.startinblox.com/framework/sib-core/issues/618
* [x] https://git.startinblox.com/framework/sib-core/issues/616
* [x] https://git.startinblox.com/framework/sib-core/issues/594 -> Priority one
* [ ] https://git.startinblox.com/framework/sib-router/issues/62
## Related issues in Djangoldp-Packages
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/269
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/382
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/285
* [x] https://git.startinblox.com/djangoldp-packages/django-webidoidc-provider/issues/15
* [ ] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/299
## Related issues in Blox or App repositories
* [ ] https://git.startinblox.com/applications/hubl/issues/800
* [x] https://git.startinblox.com/applications/hubl/issues/1038
* [x] https://git.startinblox.com/components/solid-xmpp-chat/issues/260
## Specifications related
* [ ] https://git.startinblox.com/documentation/specifications/issues/2
## Customers waiting for it
* FNK
* HD
* ESS
* All of them, maybe
## Related issues in the associated project (if any)
* [X] https://git.startinblox.com/applications/hubl/issues/417
* [X] https://git.startinblox.com/applications/hubl/issues/399
* [X] https://git.startinblox.com/applications/hubl/issues/403
## Expected delivery date
* 7th, May
### Next steps
* Test in some apps
* [ ] FNK
* [ ] Coopstarter
* [ ] Happy Dev Website?
## Related milestones
* Milestone in sib-core
* Milestone in customer project
/cc @balessanMatthieu Fesseliermatthieu@startinblox.comMatthieu Fesseliermatthieu@startinblox.comhttps://git.startinblox.com/management/core-team/-/issues/1Internationalization2020-12-15T17:03:50+01:00Benoit Alessandronibenoit@startinblox.comInternationalization## What is i18n?
* static (HTML) web content, which can be done with Django templates even in 1.11 (https://docs.djangoproject.com/en/1.11/topics/i18n/translation/)
* "dynamic" translation of model data, which this issue is concerned wi...## What is i18n?
* static (HTML) web content, which can be done with Django templates even in 1.11 (https://docs.djangoproject.com/en/1.11/topics/i18n/translation/)
* "dynamic" translation of model data, which this issue is concerned with. I wrote a [guide on using modeltranslation](https://git.startinblox.com/djangoldp-packages/djangoldp/wikis/guides/internationalization), the issue here is to _serialize_ internationalized fields, and handle front-end display/submission
## Goals
The idea is to provide an internationalization solution on the data side for the Startinblox projects.
## Lead Dev(s)
@matthieu
@calummackervoy
## MVP
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp/issues/203
* [x] https://git.startinblox.com/framework/sib-core/issues/548
* [x] https://git.startinblox.com/framework/sib-core/issues/579
* [ ] https://git.startinblox.com/framework/sib-core/issues/580
* [ ] https://git.startinblox.com/framework/sib-core/issues/581
## Next steps
* [x] https://git.startinblox.com/framework/sib-core/issues/604
* [x] https://git.startinblox.com/djangoldp-packages/djangoldp-i18n/issues/1
## Customers waiting for it
* Coopstarter Knowledge Base
* Startinblox Website
* Happy Dev
* Hubl Website
## Expected delivery date
* early July?
## Related milestones
/cc @balessanCalum MackervoyCalum Mackervoy