-
Notifications
You must be signed in to change notification settings - Fork 6
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
bunlang.master #27
Merged
Merged
bunlang.master #27
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
WAS - 10% : 50/498 ( 0/114 in events package) NOW - 27% : 136/499 ( 86/115 = 74% in events package) Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Test file in /calendar/testEvent.json Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Add 2 more Calendar Events for test Signed-off-by: Ronan GUILBAULT <[email protected]>
Allow compare epoch numbers when filter Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Not detect meetup ids in Event yet Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
…d remove others Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
WAS - 21% : 136/635 ( 0/159 -> 00% in jobs) NOW - 39% : 250/640 (105/160 -> 65% in jobs) Signed-off-by: Ronan GUILBAULT <[email protected]>
WAS - 39% : 250/640 ( 95/130 in events) NOW - 40% : 257/640 (102/130 in events) Signed-off-by: Ronan GUILBAULT <[email protected]>
WAS - 40% : 257/640 (105/160 in jobs) NOW - 42% : 274/645 (122/161 in jobs) Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Will be useful with notifications... Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
id >>> name >>> tags* > description, website/url *help in boost ONLY (must() clause doesn't use this property) Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
…up call only This daily job delete old documents ("date" filed in `calendarevents` type) and hidden documents ("hidden" field) Signed-off-by: Ronan GUILBAULT <[email protected]>
…s on an existing `dev-conferences` index Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Move all in 2 classes : DefineOptions and DCSetup Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Signed-off-by: Ronan GUILBAULT <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Voici tout plein de modifications sur le projet. Je vais essayer de tout lister.
Dernière mise à jour : 22 juin, 11h30
Amélioration de l'ajout / modification de conférences / communautés
Chaque conf / commu est représenté par 1 fichier, dans une arborescence de type
<Nom Ville>/<id>.json
. C'est plus simple à modifier qu'un fichier par ville en mode compressé...Plus d'informations ici.
Ajout des tags
Cela était en partie déjà en place, mais maintenant c'est affiché.
Les tags sont également cliquables pour permettre de lancer une recherche sur ce terme.
Amélioration de l'outil de recherche
La recherche est maintenant paginée (avant seul 10 résultats maximum étaient affichés).
De plus, la création de la requête passe par une classe ElasticSearch permettant de la créer, plutôt que par du JSON (faire une recherche pouvant intégrer une pagination, un filtre, un tri et une requête est plus simple ainsi).
Ajout des chaînes vidéos pour les conférences / communautés
Juste 2 champs à ajouter :
youtube
(il y a le nom aussi à indiquer, car l'url est un genre de hash) etparleys
.Amélioration des tests
On passe de 10% sur 500 lignes à 83% sur 1550 lignes en couverture.
Ajout des événements à venir, création d'une timeline
Comme pour les conférences / communautés, mais pour les événements. Chaque événement est représenté par un fichier JSON, dans une arborescence de type
<année>/<mois>/<id>.json
.Plus d'informations ici.
La timeline remplace l'agenda qui était en place auparavant.
Ces événements sont également intégrés à l'outil de recherche (il y a un choix à faire entre conf / commu et événements sur la page /search).
Plus grande utilisation de Meetup
Meetup est utilisé également pour importer les événements à venir, pour les commus qui ont renseigné le champ
meetup
.Il y a en plus un rechargement automatique sur Clever de manière quotidienne. (2h UTC)
Ajout des CFP pour les événements
Juste un champ à ajouter, avec l'affichage du statut du CFP (ouvert ou fermé).
Ajout des localisations et création d'une minimap
Chaque ville possède sa localisation (fichier ressource :
cities/cities.json
). Cela permet :La mini-carte ne s'affiche pas pour les "très petits" écrans selon Bootstrap (taille de l'image fixe à 600px de large...), et affiche les liens classiques.
Et bien sûr, "Partout" n'a pas de coordonnées...
Amélioration de CityLight
Les données par villes ont été découpées plus finement. Maintenant, par ville, il y a :
Ainsi, le passage sur une ville de la carte permet d'afficher ces informations, et si la ville n'est pas géolocalisée ou sur les petits écrans, ces informations sont affichées lorsqu'on est dessus.
Mise à jour des librairies
Toutes les dépendances sont mises à jour :
npm
oumaven
...Changements sur la page d'accueil
Une barre de recherche remplace le lien vers la page
/search
(cette page reste active, mais l'accès se fait uniquement via URL). Maintenant, la timeline et la mini-carte se mettent à jour suivant le contenu de la recherche (attention, il faut maintenant faireEnter
pour lancer la recherche), et chaque lien renvoie vers sa ville, avec le filtrage par le terme recherché.Les événements ont également un effet collapsible : seuls le nom, la date et le lieu sont affichés par défaut.
Enfin, le layout de la page a été revu.
Ajout des suggestions dans la barre de recherche
La barre de recherche affiche les suggestions par rapport à son contenu. Un clic sur l'item lance une recherche.
Ajout d'un menu sur l'avatar
Maintenant, la connexion / déconnexion, l'aide, et la liste des favoris se trouvent dans un menu s'affichant en cliquant sur l'avatar.
Utilisation de l'authentification
Chaque utilisateur connecté via Github peut maintenant avoir ses favoris. Cela peut être :
Ces favoris sont affichés dans le menu en haut à droite, avec des liens qui
Ainsi, les favoris permettent d'ajouter :
Sur les notifications, à chaque favori est associé une recherche (c'est séparé par utilisateur). pour chaque document créé / modifié, ES regarde les favoris qui correspondent :
Dans ces 3 cas, une nouvelle notification est envoyé aux utilisateurs concernés (Une seule par mise à jour, le fait d'avoir un document entrant dans 2 favoris est géré, avec une priorité "terme < ville < identifiant"). Le texte est bien sûr personnalisé dans chaque cas, et un lien vers la donnée en question est fourni.
Travail sur la recherche
J'ai joué avec les requêtes de recherche pour avoir le comportement suivant :
id >>> name >>> tags > description, url
should
, et nonmust
), car comme je l'ai un peu favorisé par rapport à la description et à l'url, un document qui n'a QUE le tag recherché, et rien dans les autres propriétés, serait devant un qui aurait le mot dans la description...Ajout d'une routine
cron
Tous les jours, à 2h (UTC normalement), Clever lance une routine qui met à jour l'index. Cette routine :
Sur ce dernier point, pour tous les fichiers JSON, j'ai ajouté un champ :
hidden
: ainsi, s'il vauttrue
, le document sera supprimé par la routinecron
. Bien sûr, un document supprimé et marquéhidden
ne sera pas importé ensuite, ce qui permet de supprimer dans un second temps le fichier JSON du dépôt, éventuellement. Idem pour les événements passés.Changements sur les mappings
Il faudrait repartir de zéro au niveau des types (donc oui, ça entraîne une perte des données, surtout le type
users
, mais il était peu utilisé surmaster
), car comme pas mal de changement ont été apporté à ce niveau-là, ne pas le faire pourrait entraîner des bugs. Dans ce cas, il faut ajouter àclevercloud/maven.json
l'option-DCREATE_MAPPINGS=true
(mais sur 1 seulpush master
, sinon les données seront effacées systématiquement...)Bugs connus
npm run build
prend beaucoup de temps, à cause de la partie minifier du bundle.js (14x sur mon ordi : 2'45 contre 12"). J'ai rajouténpm run build-dev
, qui fait une compilation simple, mais en mode développement. Cependant, Maven utilise toujours le mode production, viascripts/npmbuild.sh
. Peut-être que définir 2 profils dans Maven (mode prod [seulement pour Clever] et mode dev [défaut]) serait pas mal...Je pense n'avoir rien oublié pour le principal.