Skip to content

1.2.62

Latest

Choose a tag to compare

@github-actions github-actions released this 04 Oct 07:11
· 19 commits to main since this release
Immutable release. Only release title and notes can be modified.
  • The Windows setup window shows a cronstable icon in its title bar and on
    its taskbar button: the pendulum from the logo, on the dark tile of the
    iOS app icon. The setup executable, the installed application entry, and
    User Account Control (UAC) prompts keep the full cronstable logo.
  • The dev extra is the one development dependency list: tox and CI install
    it, as pip install -e ".[dev]" does. The two generated lists that tox
    also reads are in requirements/: min.txt for tox -e mindeps and
    dev-freethreaded.txt for Python 3.14t.

Performance compared with 1.2.61

Regression check: passed. No compared metric exceeded its regression thresholds.

Both versions were benchmarked in alternating rounds on the same machine. Results use the lowest runtime and median memory usage across rounds. Negative changes mean less time or memory; positive changes mean more.

Benchmark comparisons (100 metrics)

Noise (±) estimates run-to-run variation across both versions. A result fails the regression check only if the increase exceeds its percentage limit, its minimum absolute change, and 2 times the noise estimate. n/a means too few rounds to estimate noise; the other limits still apply.

The Regression limit column accounts for the minimum absolute change, expressed as a percentage of the baseline. Not enforced marks informational metrics.

Startup times include Python startup overhead. Their percentage changes exclude that overhead when it can be measured separately and leaves a positive runtime in both versions.

Benchmark 1.2.61 1.2.62 Change Noise (±) Regression limit
loop.stall_metrics_2000 28.94 ms 27.03 ms -6.6% 4.6% Not enforced
state.list_records_2k 23.29 ms 22.67 ms -2.7% 2.6% 42.93% (declared 15%)
startup.import_cronexpr 25.57 ms 25.73 ms +2.5% 2.7% 25%
webui.radar_walk_500 410.0 us 400.0 us -2.4% 1.3% 487.8% (declared 25%)
state.depends_on_past_gate 3.06 ms 3.13 ms +2.2% 1.0% 65.34% (declared 25%)
mem.gc_pause_100k 130.49 ms 133.20 ms +2.1% 3.8% 25%
cronexpr.next_dst_2k 40.58 ms 41.41 ms +2.0% 2.4% 24.64% (declared 15%)
state.boot_rehydrate_populated 40.14 ms 39.41 ms -1.8% 1.0% 24.91% (declared 15%)
schedule.next_fires_2k 25.36 ms 24.92 ms -1.7% 2.2% 39.43% (declared 15%)
cronexpr.parse_complex 24.60 ms 24.20 ms -1.6% 2.2% 40.65% (declared 15%)
state.gc_sweep_2k_streams 33.11 ms 32.63 ms -1.5% 2.2% 45.3% (declared 25%)
config.jobconfig_3k 67.54 ms 68.49 ms +1.4% 2.5% 15%
schedule.due_pass_100k 16.20 ms 15.97 ms -1.4% 1.7% 61.73% (declared 25%)
loop.idle_wake_rate 21.92 ms 21.62 ms -1.4% 2.4% 25%
config.reload_warm_include_50 100.37 ms 99.01 ms -1.4% 0.9% 25%
dag.plan_claim_10k 13.54 ms 13.71 ms +1.3% 3.5% 73.87% (declared 15%)
schedule.cold_build_100k 494.83 ms 488.45 ms -1.3% 1.6% 15%
job.report_noop_100k 52.84 ms 52.17 ms -1.3% 3.5% 15%
redact.clean_20k 20.73 ms 20.49 ms -1.2% 3.0% 48.23% (declared 15%)
state.list_records_warm 107.82 ms 106.58 ms -1.2% 0.9% 15%
schedule.lint_250_zoned 7.87 ms 7.78 ms -1.1% 2.0% 127% (declared 15%)
tui.log_search_20k 15.39 ms 15.23 ms -1.0% 1.2% 64.99% (declared 15%)
dag.build_layered_10k 49.99 ms 49.50 ms -1.0% 1.6% 20% (declared 15%)
cluster.job_owner_2k 57.90 ms 58.47 ms +1.0% 2.6% 17.27% (declared 15%)
state.append_1k 127.50 ms 126.25 ms -1.0% 1.1% 39.22% (declared 15%)
job.stream_capture_120k 35.46 ms 35.80 ms +1.0% 2.3% 28.2% (declared 15%)
state.lease_renew_200 50.44 ms 50.91 ms +0.9% 1.0% 99.13% (declared 25%)
loop.stall_completions_500 10.17 ms 10.08 ms -0.9% 0.9% 49.14% (declared 25%)
prometheus.render_500 17.11 ms 17.25 ms +0.8% 1.9% 58.45% (declared 15%)
cronexpr.test_match_200k 25.51 ms 25.31 ms -0.8% 1.9% 39.2% (declared 15%)
ical.render_500x7d 51.33 ms 51.73 ms +0.8% 0.8% 19.48% (declared 15%)
cronexpr.occurrences_1k 13.92 ms 14.03 ms +0.8% 1.8% 71.83% (declared 15%)
config.parse_crontab_1k 12.69 ms 12.60 ms -0.8% 0.9% 78.77% (declared 15%)
schedule.reseed_local_20k 94.59 ms 93.90 ms -0.7% 1.8% 15%
webui.render_fleet_15x400 23.77 ms 23.94 ms +0.7% 0.6% 25%
json.roundtrip_orjson_3k 208.06 ms 206.62 ms -0.7% 0.6% 15%
config.parse_yaml_3k 2.004 s 1.991 s -0.7% 2.6% 15%
dag.advance_quiescent_chain 70.89 ms 70.42 ms -0.7% 0.5% 25%
state.fanout_gather_100 10.16 ms 10.22 ms +0.6% 3.2% 98.41% (declared 25%)
json.roundtrip_3k 582.72 ms 579.17 ms -0.6% 1.2% 15%
dag.adopt_scan_500 102.02 ms 101.40 ms -0.6% 0.7% 25%
fingerprint.job_set_id_10k 304.60 ms 306.37 ms +0.6% 1.1% 15%
cronexpr.next_simple 38.38 ms 38.60 ms +0.6% 1.8% 26.06% (declared 15%)
config.reload_gc_100k 2.470 s 2.456 s -0.5% 1.1% 25%
redact.secrets_5k 20.60 ms 20.49 ms -0.5% 1.1% 48.54% (declared 15%)
dag.list_runs_warm 13.05 ms 12.98 ms -0.5% 1.2% 25%
tui.drawer_paint_5k 105.22 ms 105.76 ms +0.5% 0.7% 15%
cluster.fleet_view_15x400 84.43 ms 84.86 ms +0.5% 1.0% 25%
mcp.handle_200 153.78 ms 154.52 ms +0.5% 0.7% 15%
resources.monitor_stop_100 294.05 ms 292.72 ms -0.5% 1.5% 25%
redact.adversarial_10k 36.19 ms 36.35 ms +0.4% 2.0% 27.63% (declared 15%)
state.kv_roundtrip_200 56.12 ms 56.36 ms +0.4% 1.1% 17.82% (declared 15%)
schedule.reseed_100k 203.52 ms 202.68 ms -0.4% 1.4% 15%
dag.mapped_drain_256 19.64 ms 19.72 ms +0.4% 1.0% 50.92% (declared 25%)
dag.finish_fanin_1k 3.36 ms 3.34 ms -0.4% 0.7% 149% (declared 25%)
startup.version 53.93 ms 54.01 ms +0.4% 0.2% 25%
state.mutate_document_1k 143.67 ms 144.21 ms +0.4% 0.7% 34.8% (declared 25%)
webapi.sse_burst_20k 46.06 ms 45.91 ms -0.3% 1.2% 15%
startup.python_baseline 17.27 ms 17.22 ms -0.3% 1.3% Not enforced
state.artifact_get_newest 21.74 ms 21.81 ms +0.3% 1.8% 25%
schedule.duplicates_20k 17.42 ms 17.36 ms -0.3% 3.5% 57.41% (declared 15%)
state.derive_max_cold 19.95 ms 20.01 ms +0.3% 1.0% 50.12% (declared 15%)
dag.build_chain_10k 29.03 ms 28.94 ms -0.3% 0.5% 34.45% (declared 15%)
schedule.suggest_slot_5k 4.39 ms 4.41 ms +0.3% 0.9% 227.6% (declared 15%)
startup.job_set_id_100 227.77 ms 227.09 ms -0.3% 2.9% 25%
webui.render_term_5k 108.30 ms 108.60 ms +0.3% 0.9% 25%
state.list_documents_600 56.06 ms 56.21 ms +0.3% 1.5% 21.41% (declared 15%)
loop.stall_jobs_500 20.89 ms 20.84 ms -0.3% 0.8% Not enforced
startup.validate_config_100 221.58 ms 221.00 ms -0.3% 1.4% 25%
webapi.gzip_body_500 63.78 ms 63.95 ms +0.3% 1.0% 15%
state.derive_max_warm 146.36 ms 146.67 ms +0.2% 0.6% 15%
statsd.emit_2k 12.93 ms 12.95 ms +0.2% 1.1% 77.35% (declared 25%)
dag.advance_quiescent_1k 72.41 ms 72.27 ms -0.2% 0.4% 25%
cronexpr.next_complex 15.71 ms 15.68 ms -0.2% 1.0% 63.67% (declared 15%)
dag.list_dags_warm 1.09 ms 1.09 ms -0.2% 1.6% 183.9% (declared 25%)
schedule.pressure_20k_48h 16.61 ms 16.64 ms +0.1% 2.1% 60.2% (declared 15%)
tui.log_restyle_5k 31.38 ms 31.42 ms +0.1% 1.7% 31.87% (declared 15%)
startup.import_daemon 179.96 ms 179.71 ms -0.1% 1.2% 25%
config.parse_yaml_300 200.69 ms 200.93 ms +0.1% 0.7% 15%
config.reload_warm_50 46.65 ms 46.59 ms -0.1% 1.6% 25%
state.artifact_list_churn 1.48 ms 1.48 ms -0.1% 3.2% 338.1% (declared 25%)
webapi.auth_scope_20k 88.57 ms 88.66 ms +0.1% 1.4% 15%
webapi.jobs_payload_500 50.81 ms 50.85 ms +0.1% 1.9% 19.68% (declared 15%)
push.seal_500 90.58 ms 90.52 ms -0.1% 0.8% 15%
webui.render_rows_500 17.10 ms 17.11 ms +0.1% 1.0% 25%
startup.import_config 95.96 ms 95.94 ms +0.0% 0.4% 25%
cluster.parse_summaries_6k 86.72 ms 86.75 ms +0.0% 0.9% 15%
config.interp_2k 66.03 ms 66.01 ms -0.0% 1.0% 15%
tui.dag_graph_paint_2k 228.23 ms 228.21 ms -0.0% 1.4% 15%
mem.rss_daemon_import 37.48 MB 37.48 MB -0.0% 0.2% 25%
cronexpr.parse_simple 44.05 ms 44.05 ms -0.0% 3.5% 22.7% (declared 15%)
webui.log_count_5k 100.0 us 100.0 us +0.0% 0.0% 2000% (declared 25%)
webui.append_line_5k 15.0 us 15.0 us +0.0% 4.7% 25%
webui.week_walk_500 2.85 ms 2.85 ms +0.0% 5.0% 70.18% (declared 25%)
webapi.jobs_bytes_500 181.42 KB 181.42 KB +0.0% 0.0% 15%
webapi.jobs_gzip_500 5.19 KB 5.19 KB +0.0% 0.0% 15%
mem.crontab_10k 2.80 MB 2.80 MB +0.0% 0.0% 17.85% (declared 15%)
mem.jobconfig_2k 1.60 MB 1.60 MB +0.0% 0.0% 31.34% (declared 15%)
mem.retired_output_1k 0.12 MB 0.12 MB +0.0% 0.0% 433.7% (declared 15%)
mem.rss_version 14.45 MB 14.45 MB +0.0% 0.0% 25%

Full Changelog: 1.2.61...1.2.62