Releases: progenetix/bycon
Release list
v2.9.1 "Amtrak"
In a major change to the previous versions, the 2.9.1 release also removes all of the byconServices apps and libraries - now refactored in https://codeberg.org/Progenetix/byconservices (additionally to the previous library move & rewrites to https://codeberg.org/Progenetix/byconplus). Still no full release; more work on documentation, settings/configuration & deployment methods needed.
v2.9.0 "Foggy Bottom"
The v2.9.0 "Foggy Bottom" release is a preparation for a v3 which will include "settled" Beacon v3 features as well as a complete separation from services (now still included).
v2.8.0 "genemaps"
This release contains changes focussed on data aggregations and gene hit statistics, as well as many areas of restructured code. For details please see thechanges tracker.
v2.7.0 "That Was 2025"
This release chiefly introduces data summaries ("Aggregations") as a full stack WiP development; from data aggregation in MongoDB over a summary response format proposal to JS dashboards with 1D and 2D summary data displays (e.g. stacked bar charts).
2025-12-31 (v2.7.0 "That Was 2025")
beaconplusWebfront end updates- refactored data summaries source in
src/components/summaries/ - improving of documentation in https://bycon.progenetix.org/data-summaries/
- refactored data summaries source in
2025-12-22 (v2.7.0+pre1)
- de-nested the
classificationTreesinto single tupe specific files
and moved the additional sources for their generation outside of the project- also renamed some files/filter types (e.g.
NCIT==>NCITneoplasm,NCITsex==>pgxSex)
- also renamed some files/filter types (e.g.
- in
beaconplusWebchanges toAggregationPlots- moved from
VictorytoPlotly; this requiresnpm install react-plotly.js plotly.js
- moved from
- new
___BEACON_ROOT___/beacon/aggregation_termsendpoint to indicate concepts
for available data summaries
2025-12-12 (v2.6.9)
The recent changes addressed several issues with the aggregation implementation
- now
ByconSummariesclass- dimension agnostic, i.e. supports 1D, 2D, ... nD aggregations through the
same methods - TODO: So far cross-entity aggregations are supported through some workarounds;
e.g. some information stored inindividual(sex, age, followup...) is
repeated in the biosamples'individual_infoproperty to allow biosample
aggregations on individual properties. A more generic solution would be
desirable, e.g. utilizing MongoDB's$lookup.
- dimension agnostic, i.e. supports 1D, 2D, ... nD aggregations through the
- added (expanding ...) doumentation page about the Beacon Aggregation development
2025-11-28 (v2.6.8 "Aggregator")
- extending aggregation responses to support 2-dimensional aggregations
- implemented in
ByconSummariesclass - now also supports
plot_type: "stackedBar"for the dashboard
- implemented in
2025-11-18 (v2.6.7 "DashboardDabbler")
- implemented a basic dashboard at
___BEACON_ROOT___/dataDashboard/using the
draft version of a Beacon v2.n aggregation response- simple Victory based bar plots defined in
beaconplusWeb/src/components/AggregatedPlots.js - only one-dimensional so far; 2-dimensional for stacked plots coming up
- simple Victory based bar plots defined in
- ... based on the
ByconSummariesclass to handle aggregation definitions
and processing- added
aggregation_definitions.yamlfile for defining available aggregations
and their parameters - modified
ByconResultSetsto include aggregation processing if requested
through theaggregatedgranularity parameter
- added
- added a new
individual_infoobject property to biosamples which contains
data extracted from the corresponding individual, to allow easier aggregation- one has to run the updated
housekeeping.pyscript to populate this field
- one has to run the updated
individual_info: {
index_disease: {
disease_code: { id: 'NCIT:C8851', label: 'Diffuse Large B-Cell Lymphoma' },
stage: { id: 'NCIT:C27966', label: 'Stage I' },
clinical_tnm_finding: [ { id: 'NCIT:C48720', label: 'T1 Stage Finding' } ],
followup_state: { id: 'EFO:0030049', label: 'dead (follow-up status)' },
followup_time: 'P1M',
onset: { age: 'P41Y', age_days: 14974 },
followup_days: 30
},
sex: { id: 'NCIT:C16576', label: 'female' }
v2.6.6 "GlobeProjector"
2025-11-04 (v2.6.6 "GlobeProjector")
- created ByconHO class in
beacon_responses.pyand deletedhandover_generation.py - created new
/services/sampleglobeendpoint for plotting sample provenance
on a globe projection using Globe.gl
2025-11-03 (v2.6.5 "geonames")
- updated the
geolocsdatabase with the latest GeoNames dump (2025-10-29)- now using
cities500, i.e. 10x the number of previous entries - created
geoUpdater.pyhousekeeping script for future updates of the
geolocscollection - added a function to
housekeeping.pyto update thegeo_locationin
biosamples from the existing long, lat data to pull the nearest match from
thegeolocscollection- side effect are now some rather granular annotations; e.g. New York
coordinates which point to Manhattan are now labeled as "Financial District"
instead of "New York City" - unknown coords ar now all mapped to Atlantis whish - as everybody knows -
sits below the Bermuda Triangle (centered at about lat: 25, long: -71)
- side effect are now some rather granular annotations; e.g. New York
- ... above now handled by
ByconGeoResourceclass
- now using
v2.6.4 "___BEACON_ROOT___"
- changed from hard coded
https://progenetix.orgto template___BEACON_ROOT___
in map, schema and configuration files and for handover generation- the
___BEACON_ROOT___is replaced during request processing through the
detectedf"{REQUEST_SCHEME}://{HTTP_HOST}"
- the
- fixed UCSC link generation for BeaconPlus
- removed
beaconMap.yamlfromschemas, since now part ofconfig/beacon_map.yaml - renamed
ENVtoHTTP_HOSTfor consistency - new
dict_replace_valuesfunction inbycon_helpers.py
... and from 2.6.3
- schema file restructuring
- removed all JSON schemas fromn the source tree since they are generated
from YAML anyway and changed the file targets inschema_parsing.pyto
.yamlaccordingly - flattened schema hierarchy structure since there is no need to distinguish
betweensrcandjsondirectories anymore - removed the
schemas/bindirectory since no json files are generated anymore - adjusted documentation generation in
markdowner.pyaccordingly
- removed all JSON schemas fromn the source tree since they are generated
- cleaned out code w/ removal of "pgxVariant" references since using
vrsVariant- e.g. in
ByconVariantandByconBundler
- e.g. in
v2.6.3 "Small Surgery"
This release
- gets rid of JSON schema file since they are processed from YAML source anyway; and rearranges files in a slightly flattened out structure
- restructures configration files, so that e.g. paths are now matched from the map, not as separate parameters; and generally removes some of the custom properties of the configurations
- removes some parameter processing functions / a file and adds more hard coded load to the root
__init__.py - restructures e.g. database related configs into
BYC_DBS - removes the
pgxVariantformat (now passing everything through "VRS + legacy properties"
v2.5.0 "Forked"
Please see the version tracker at https://bycon.progenetix.org/changes/.
v2.4.9 "Montréal"
v2.4.8 "Friday the 13th"
Please see https://bycon.progenetix.org/changes/