p3p v 1.0
substantial improvements, across the board.
What's Changed
- Fix pandas DataFrame.append() deprecation in parsers by @Copilot in #240
- Fix pandas 2.0 compatibility: replace deprecated DataFrame.append() by @Copilot in #238
- Fix missing defaultdict import in multinet.py by @Copilot in #236
- Fix get_layers() returning dict instead of list of graphs by @Copilot in #242
- Fix inter-layer edge visualization by persisting offset positions by @Copilot in #246
- Fix statistics computation for GraphML-loaded multilayer networks by @Copilot in #244
- CLI improvements: add help command, use multiedgelist format, verbose option descriptions by @Copilot in #248
- Fix edgelist format to preserve layer information for multilayer networks by @Copilot in #250
- Streamline LLM.md: 92% reduction with TODO emphasis by @Copilot in #254
- Improve formal verification coverage by adding contracts and tests by @Copilot in #252
- Reorganize examples into categorized subdirectories with documentation by @Copilot in #256
- Fix tutorial validation CI path references by @Copilot in #262
- Identify and document CrossHair-testable pure functions with CI integration by @Copilot in #260
- Add comprehensive tests for multilayer object corner cases, fix all bugs, and add tutorial validation by @Copilot in #258
- Fix resource leaks, division by zero errors, and data loss in core algorithms by @Copilot in #264
- Implement Leiden community detection for multilayer networks by @Copilot in #268
- Apply automated code quality improvements: fix 439 style issues and remove eval() security vulnerability by @Copilot in #266
- Consolidate 37 markdown files into README.md and LLM.md by @Copilot in #270
- Add Docker support for py3plex CLI by @Copilot in #274
- Complete Docker documentation in RST files by @Copilot in #276
- Consolidate docker-examples into RST documentation by @Copilot in #278
- Fix broken documentation links and add example outputs by @Copilot in #280
- Add comprehensive algorithm roadmap documentation by @Copilot in #282
- Add MetaFlowReport for unified multilayer network analysis by @Copilot in #284
- Implement versatility: multilayer eigenvector centrality by @Copilot in #286
- Fix LaTeX rendering in Supra-Adjacency Matrix documentation by @Copilot in #290
- Implement SIR epidemic simulator for multiplex graphs by @Copilot in #288
- Fix monoplex_nx_wrapper to forward kwargs and eliminate eval() security risk by @Copilot in #294
- Add property-based tests and CrossHair contracts for core network operations by @Copilot in #296
- Fix NameErrors, unreachable code, and non-portable operations across core modules by @Copilot in #292
- Add stateful property tests for multi_layer_network API by @Copilot in #300
- Add comprehensive Hypothesis property-based test suite for multilayer network core functionality by @Copilot in #304
- Add wf_improved parameter to closeness centrality and fix meta_flow_report documentation by @Copilot in #298
- Add property-based tests for multiplex network state machine by @Copilot in #302
- Update actions/upload-artifact from v3 to v4 and fix all 27 property test failures by @Copilot in #312
- Clean root directory: remove test artifacts and helper scripts by @Copilot in #315
- Optimize dict views, numpy operations, and fix O(N²) matrix assembly bug by @Copilot in #313
- Remove 600+ lines of duplicate code across 7 modules by @Copilot in #317
- Add test coverage for exception handling, I/O, and visualization utilities by @Copilot in #320
- Add MultiRank and Multiplex PageRank variants for multilayer centrality coverage by @Copilot in #322
- Add 40 property-based tests for multilayer network operations by @Copilot in #324
- Improve property-based tests: fix bugs, add strategies, enhance coverage by @Copilot in #323
- Implement 12 extended centrality metrics for multilayer networks by @Copilot in #326
- Fix PageRank dangling nodes and sparse matrix handling in multilayer centrality by @Copilot in #328
- Add end-to-end multilayer network analysis notebook example by @Copilot in #330
- Modernize test suite from unittest to pytest by @Copilot in #329
- Remove non-essential markdown files from repository root by @Copilot in #331
- Improve example quality with comprehensive documentation and error handling by @Copilot in #335
- Add comprehensive RNG seeding and determinism tests by @Copilot in #337
- Remove validation script and add 26 property-based tests for centrality metrics by @Copilot in #333
- Fix example scripts to use absolute paths instead of directory-dependent relative paths by @Copilot in #339
- Add Examples CI workflow with automatic fast/slow filtering by @Copilot in #341
- Fix dataset path resolution for examples when py3plex installed via pip by @Copilot in #343
- Add convenience exports to visualization module by @Copilot in #347
- Export validate_label_propagation from network_classification module by @Copilot in #349
- Fix edge weight type error in parse_simple_edgelist causing random walk failures by @Copilot in #353
- Fix leiden multilayer example and isolated node handling in supra adjacency matrix by @Copilot in #351
- Consolidate markdown documentation into LLM.md by @Copilot in #355
- Add 118 property-based tests across 6 modules to improve coverage by @Copilot in #357
- Expand selftest with centrality statistics and multilayer manipulation by @Copilot in #359
- Add CITATION.cff to enable GitHub citation button by @Copilot in #363
- Remove outdated ./bin binary references from documentation by @Copilot in #367
- Add --quickstart command and document existing CLI flags by @Copilot in #365
- Consolidate packaging to PEP 621 standard by @Copilot in #361
- Remove 103 redundant comments across codebase by @Copilot in #369
- Categorize examples by runtime and enable 14 fast standalone examples in CI by @Copilot in #371
- Fix TypeError in visualize_matrix() from calling len() on generator by @Copilot in #377
- Add multiplex_folder to supported input types by @Copilot in #375
- Fix supra-adjacency matrix dimensions in example by using multiplex network generator by @Copilot in #373
- Make py3plex LLM-friendly via enhanced LLM.md entry point by @Copilot in #379
- Fix critical bugs and NetworkX 3.x compatibility issues by @Copilot in #383
- Expand property-based testing coverage with Hypothesis by @Copilot in #381
- Add metamorphic tests for multilayer network invariants with CI integration by @Copilot in #389
- Add SKIP_CI markers to slow/interactive examples by @Copilot in #387
- Add hypothesis-based property tests targeting mutation testing survivors by @Copilot in #385
- Add multiplex centrality micro-benchmark for N∈{1e3,1e4,1e5} edges by @Copilot in #393
- Fix duplicate timeout-minutes key in tests.yml workflow by @Copilot in #397
- Add 89 property-based tests across 7 core modules by @Copilot in #399
- Add lines of code badge to README by @Copilot in #401
- Fix ImportError in metamorphic-nightly workflow: install package in editable mode by @Copilot in #403
- Remove redundant test files by @Copilot in #405
- Add Pro GUI via Docker Compose in /gui by @Copilot in #407
- Optimize GUI test suite and add GUI section to main README by @Copilot in #409
- [WIP] Remove emojis from all areas by @Copilot in #413
- Remove PR stats comments from CI and add multi-language LOC counting by @Copilot in #418
- Move GUI documentation from markdown to RST format by @Copilot in #416
- Refactor multinet.py: Extract helpers, eliminate eval(), improve organization by @Copilot in #420
- Auto-update LOC badge in README via workflow by @Copilot in #425
- Reduce GUI CI to bare minimum under 1 minute by @Copilot in #423
- Fix multi-edgelist parsing and centrality computation for GUI workflow by @Copilot in #427
- Add retry logic and timeouts to pip commands for CI resilience by @Copilot in #431
- Remove unnecessary markdown documentation files by @Copilot in #437
- Optimize GUI performance for large networks with caching and adaptive algorithms by @Copilot in #436
- Implement missing multiplex network metrics by @Copilot in #439
- Add centrality benchmark for comparing multilayer network algorithms by @Copilot in #443
- Fix broken documentation links and duplicate headers by @Copilot in #444
- Add missing GUI documentation HTML files to docs/ by @Copilot in #446
- Apply documentation consistency guidelines to RST files by @Copilot in #448
- Comprehensive py3plex library evaluation with 86 actionable improvements by @Copilot in #450
- Add NetworkX conversions, repr, enhanced documentation, and I/O round-trip tests by @Copilot in #452
- Optimize multilayer network algorithms with sparse matrices and vectorization by @Copilot in #454
- Complete LLM.md task sweep: enhance API discoverability and documentation by @Copilot in #456
- Add five new multilayer network visualization modes with professional aesthetics, extensive testing and visual documentation by @Copilot in #458
- Add comprehensive docstrings for LLM readability across core modules by @Copilot in #462
- Add property-based tests for schema validation, input validation, and stochastic normalization by @Copilot in #460
- Add visualization mosaic banner to README and documentation by @Copilot in #464
- Improve showcase banner: uniform tiles, zero spacing, labeled visualizations by @Copilot in #466
- Add layered flow visualization for multilayer networks by @Copilot in #468
- Add Ollivier-Ricci curvature and Ricci flow for multilayer networks by @Copilot in #470
- Add Ricci-flow-based visualization for multilayer networks by @Copilot in #472
- Remove bot-generated markdown files by @Copilot in #480
- Improve radial layout aesthetics: larger nodes and semi-transparent layer bands by @Copilot in #474
- Expand selftest coverage from 8 to 12 tests by @Copilot in #476
- Document test coverage state and improvement roadmap in LLM.md by @Copilot in #482
- Enhance ego network circular visualization for publication quality by @Copilot in #484
- Update LLM.md to reflect completed test coverage tasks by @Copilot in #486
- Enable interactive visualization with Plotly by @Copilot in #488
- Improve test coverage with comprehensive test suite for core modules by @Copilot in #490
- Improve coverage and remove interactive example from docs by @Copilot in #494
- Remove interactive Plotly demo from documentation index by @Copilot in #498
- Add interactive version of diagonal multilayer plot by @Copilot in #496
- Remove accidentally committed test artifacts by @Copilot in #500
- Comprehensive codebase cleanup: remove dead code, fix bugs, improve code quality by @Copilot in #502
- Add property-based tests for statistics and multicentrality modules by @Copilot in #504
- Modernize py3plex: Add type system, improve error handling, refactor examples by @Copilot in #506
- Add execution outputs to 10-minute tutorial code examples by @Copilot in #508
- Add 47 property-based tests to improve coverage of utility modules by @Copilot in #510
- Add 72 tests covering algorithms, community detection, and core utilities by @Copilot in #514
- Polish GUI: Fix validation, persistence, exports, and UX feedback by @Copilot in #512
- Consolidate configuration into pyproject.toml and bump to v0.96 by @Copilot in #516
- Add keyboard shortcuts, tooltips, recent files, and search to GUI by @Copilot in #518
- Add executable code outputs to all quickstart documentation snippets by @Copilot in #520
- Fix GUI Docker build by copying py3plex source at build time by @Copilot in #522
- Fix nginx startup blocking on API health check by @Copilot in #524
- [WIP] Fix issue with empty landing page on GUI by @Copilot in #526
- Fix GUI blank page during React initialization and add comprehensive startup documentation by @Copilot in #528
- Add config-driven workflows with YAML/JSON support by @Copilot in #534
- Complete open visualization testing tasks from LLM.md by @Copilot in #530
- Add custom exception hierarchy with actionable error messages by @Copilot in #536
- Add lazy evaluation, caching, schema validation, immutable mode, and comprehensive multilayer algorithms by @Copilot in #538
- Add plugin system for extensible algorithm contributions by @Copilot in #532
- Fix example.rst placeholder and standardize RST formatting by @Copilot in #542
- Reorganize examples into topic-based categories for improved discoverability by @Copilot in #540
- Add Apache Arrow serialization for multilayer graphs by @Copilot in #548
- Add SQL-like DSL for multilayer network queries by @Copilot in #550
- Add scikit-learn style Pipeline for composable network analysis workflows by @Copilot in #544
- Add
py3plex checkcommand for graph file validation by @Copilot in #552 - Enable docstring examples to run via pytest by @Copilot in #560
- Add Sankey diagram visualization for multilayer inter-layer flows by @Copilot in #558
- Implement entropy-based complexity and influence metrics for multilayer networks by @Copilot in #562
- Add R interop bridge for py3plex via reticulate by @Copilot in #554
- Optimize NoRC community detection: remove dead code, improve memory efficiency, add tests, enable hierarchical clustering features by @Copilot in #556
- Add GUI screenshots to RST documentation by @Copilot in #564
- Clean up RST documentation: remove redundant MD files and fix broken references by @Copilot in #566
- Enhance DSL documentation with comprehensive working examples by @Copilot in #568
- Auto-generate PDF documentation on build by @Copilot in #570
- Add PDF documentation generation from Sphinx sources by @Copilot in #572
- Remove paused atheris fuzzing job and add property tests for workflows/DSL modules by @Copilot in #578
- Refactor Sphinx documentation into user-focused sections by @Copilot in #576
- Add py3plex logo to README by @Copilot in #580
- Consolidate redundant RST documentation files by @Copilot in #584
- Remove stale HTML artifacts from docs/ to eliminate drift with GitHub Pages by @Copilot in #588
- [WIP] Fix 404 errors on documentation pages by @Copilot in #590
- [WIP] Update documentation sources for py3plex by @Copilot in #592
- Fix 404 errors for documentation images in subdirectories by @Copilot in #594
- Update README logo to new design by @Copilot in #598
- [WIP] Enhance PDF rendering for clearer presentation by @Copilot in #596
- Fix PDF docs CI failure caused by race condition in git push by @Copilot in #602
- Clean README Getting Started section by @Copilot in #604
- Remove emojis from codebase by @Copilot in #600
- Constrain banner image size in README by @Copilot in #608
- Expose DSL module prominently across documentation and entry points by @Copilot in #606
- Docs cleanup by @SkBlaz in #614
- Add harmonic closeness variant for disconnected multilayer graphs by @Copilot in #621
- Clean redundant markdown, improve test coverage for sankey and io.converters by @Copilot in #627
- Fix RST formatting issues affecting math and list rendering by @Copilot in #623
- Fix centrality algorithm documentation and sparse layer handling by @Copilot in #625
- Improve DSL test coverage and examples by @Copilot in #629
- Add Pythonic interface features to multi_layer_network by @Copilot in #637
- Sanity check algorithms and fix ValueError in versatility function by @Copilot in #635
- Add property tests for centrality metrics coverage by @Copilot in #633
- Add expected outputs to DSL documentation examples by @Copilot in #631
- Improve PDF docs to read like a book with part structure and transitional paragraphs by @Copilot in #639
- Clarify multilayer vs multiplex network type functionality by @Copilot in #641
- GUI ergonomics: Add command palette, dark mode, and toast notifications by @Copilot in #643
- Add DSL documentation to llm.md with comprehensive examples by @Copilot in #645
- Add MATCH queries and layer clauses to DSL (DSL v3) by @Copilot in #647
- Enhance documentation with book-level narrative and domain case studies by @Copilot in #651
- feat: add dplyr-style chainable graph operations API by @Copilot in #649
- Add descriptive paragraphs around documentation examples by @Copilot in #653
- Document first-class analysis tools in llm.md by @Copilot in #657
- Enhance PDF documentation with part introductions and real-world context by @Copilot in #659
- docs: transform documentation into book-like technical guide by @Copilot in #663
- Reduce docs verbosity by removing duplicate files by @Copilot in #669
- Remove research paper narration filler from tutorial docs by @Copilot in #665
- Move Getting Started section earlier in documentation by @Copilot in #667
- Add built-in datasets module (scikit-learn style) by @Copilot in #661
- Add e2e examples with DSL + chaining to 5min and 10min tutorials by @Copilot in #671
- Streamline RST documentation style by @Copilot in #679
- Add DSL community detection support by @Copilot in #677
- Add property tests for DSL and chaining operations by @Copilot in #675
- Update LLM.md with current state of the repo by @Copilot in #681
- Enrich chain operator grammar with SQL-style verbs and terminal operations by @Copilot in #683
- Add py3plex.lab module with experiment pipeline abstractions by @Copilot in #687
- Simplify examples using Pipeline and DSL chaining with interoperability by @Copilot in #689
- Add property tests for chaining operators by @Copilot in #685
- Implement DSL v2 with AST, Builder API, and rich query results by @Copilot in #691
- Add DSL extensions for multilayer comparison, null models, and paths by @Copilot in #694
- Add dynamics module for multilayer network simulation by @Copilot in #695
- Remove redundant md files and fix RST formatting by @Copilot in #699
- Add PyPI publish workflow and version badge by @Copilot in #701
Full Changelog: git+pip...1.0