Commit Graph
47 Commits
Author SHA1 Message Date
Magne Sjaastad 21694b11e7 #14476 Align CAF_ASSERT with standard assert semantics
CAF_ASSERT was unconditionally active in every build configuration. Make it
follow the semantics of the standard assert(): active in Debug, compiled out in
optimized builds (NDEBUG).

Add the CMake option RESINSIGHT_ENABLE_ASSERTS_IN_RELEASE (default OFF) for
developers who want the asserts to stay active in an optimized build, which is
useful when reproducing a problem in RelWithDebInfo with a debugger attached.

When compiled out, the expression is kept inside an unevaluated sizeof rather
than discarded. It is not evaluated, so there is no run-time cost and no side
effects, but it is still type checked and any variable used only by the assert
still counts as referenced, avoiding a wave of unused-variable warnings.

CAF_ENABLE_ASSERTS is given a default in cafAssert.h so the header stays
self-contained and include order can never silently switch the asserts off.

Document in docs/agents/coding-style.md that CAF_ASSERT is the assert to use,
that CVF_ASSERT is legacy, and that asserts are for broken invariants rather
than for run-time conditions that need real error handling.
2026-08-07 15:05:57 +02:00
Kristian Bendiksen 1b64f1f8da Python: Move ORIONEVENTS examples to PythonExamples/experimental
Relocate import_orion_events.py and well_event_schedule_orion.py from
wells_and_fractures to a new experimental folder, and update the doc
reference in docs/orionEvents.md accordingly.
2026-08-07 14:34:35 +02:00
Kristian Bendiksen fb8e630e6b Python: Add ORIONEVENTS 2.0 format documentation
Document the ORIONEVENTS file format in docs/orionEvents.md: grammar,
line types, typed declarations, date expressions, WELL and SCHEDULE
blocks, the built-in completion event attribute tables with their
WellEventTimeline mappings, generic Eclipse keyword pass-through,
diagnostics, the validator CLI and Python apply usage.

All code examples in the document are validated against the real parser.
2026-08-07 14:34:35 +02:00
Magne Sjaastad 20404bdca8 Update crash triage to batched PR workflow
Triage 4-5 signatures per run into a single fork PR instead of one issue
plus PR per signature. The call stack that motivated each fix now lives in
the PR body.

Make registry.json status the single source of truth for what has been
handled, document the status lifecycle, and mark a signature resolved only
once the PR is merged.
2026-08-06 10:20:43 +02:00
Jørgen Herje 086ab43e0a Change ResInsight to use ri-cloud-api as submodule (#14468) 2026-08-06 08:28:00 +02:00
Magne Sjaastad b448a2606b Remove obsolete patches folder
The patches for libecl, ert and qwt were applied manually and are no
longer referenced by the build system. Also remove the corresponding
entry from the repository map documentation.
2026-07-31 15:06:15 +02:00
Magne Sjaastad 11913b2900 Crash triage: require a reproducing test to verify the fix 2026-07-28 14:43:16 +02:00
Magne Sjaastad fb96233cf4 #14372 Crash triage doc: identify fragile call patterns and suggest a fix for all locations 2026-07-28 11:37:12 +02:00
Magne Sjaastad 3592508083 Crash triage: keep comments and descriptions short and concise 2026-06-23 07:29:21 +02:00
Magne Sjaastad 50daba9e27 Crash triage: use short issue/PR titles, drop PendingRelease label 2026-06-22 14:45:49 +02:00
Magne Sjaastad 3c5c160b93 #14241 MSW: Drop redundant FromGeometry suffix from branch builders
With the legacy tree-based path removed there is only one MSW branch construction approach, so the FromGeometry suffix is no longer needed. Rename buildMainBoreBranchFromGeometry, buildValveBranchesFromGeometry, buildFractureBranchesFromGeometry and buildFishbonesBranchesFromGeometry accordingly, and update the architecture diagrams.
2026-06-19 12:50:14 +02:00
Magne Sjaastad d656d55928 Refer to personal fork generically in crash-triage guide 2026-06-11 15:09:49 +02:00
Magne Sjaastad dc697f335c Add crash-triage agent guide for the stacktrace automation pipeline
Human-gated workflow that takes an unresolved crash signature from the
resinsight-system-doc registry, locates the real crash site in source,
proposes and build-verifies a minimal fix, then on approval files the OPM
issue, pushes a fix branch to the magnesj fork, opens the PR, and records
the outcome back on the signature. Uncertain cases get an explanatory note
instead of an issue or PR. This is step 3 of the weekly crash-triage flow.
2026-06-11 15:09:49 +02:00
Magne Sjaastad c722aa83e5 Coding style: Add context menu items via appendMenuItems, not RimContextCommandBuilder 2026-06-01 11:10:07 +02:00
Magne Sjaastad 2f8ec77851 #14061 Reorder user interface for summary/grid ensemble import
* Agent docs: Recommend cmake --build over ninja when sharing build/ with Visual Studio
* Disable Create Well Target Mapping for grid ensembles with individual grids
* Move RimSummaryCaseMainCollection context menu items into appendMenuItems override
* Reorganize import menus: split per-window, group submenus, rename actions, add Import/Export icons
* Show icons on "New Statistics Case" and "New Grid Case Group" menu actions
* Rename grid/summary import submenus to "More" and use the import icon
2026-05-28 16:06:39 +02:00
Magne Sjaastad 91fed8e48c #14020 Use perforation interval cell filter to limit COMPDAT and MSW export
* Completions: Apply perforation cell filter to COMPDAT and MSW export
* PerforationInterval: Limit Cell Filter dropdown to case-level filters
* PerforationInterval: Prefix Cell Filter entries with case name when multiple cases
* Completions: Use std::format for cell filter suppression log messages
2026-05-20 16:04:40 +02:00
Magne Sjaastad 2010ba99b3 #13987 Docs: Require function bodies in .cpp, not inline in headers 2026-05-13 14:53:00 +02:00
Magne Sjaastad 92da6633bb #13987 PDM: Add caf::PdmNestedCollection framework
Introduce a shared base for tree-shaped folder containers that hold a
list of leaf items together with a list of subcontainers of the same
kind. Replaces the per-class plumbing (subcollections field, top-folder
flag, add/remove/find sub-collection, factory) that is duplicated across
RimSurfaceCollection, RimPolygonCollection and similar candidates.

- caf::PdmNestedCollectionBase: non-templated PdmObject base exposing
  collection-name, add-new-subcollection, leaf-check and topmost-folder
  marking for generic command features and script methods.
- caf::PdmNestedCollection<SelfT, ItemT>: CRTP template that owns the
  typed m_subCollections field and inherits the m_items array from
  PdmObjectCollection<ItemT>. Provides allItems(), find-sub-collection,
  and a typed factory hook.
- RimNestedMirrorCollectionInView: view-side analogue for in-view
  collections that mirror a nested source collection, with orphan-sweep
  + find-or-create + reorder sync.

Design rationale (templated vs non-templated, break-even on derived
class count) lives in docs/pdm-nested-collection-design.md.

No callers migrated in this commit.
2026-05-13 14:53:00 +02:00
Magne Sjaastad 4055954144 #13982 Python: Bump documented minimum Python version to 3.11
The StrEnum-based API (rips/enums.py, generated AppEnum classes) requires
Python 3.11+. Align the docs and copilot-instructions with setup.py.cmake,
which already declares >=3.11.
2026-05-13 14:23:10 +02:00
Magne Sjaastad 288f9a4a44 Add documentation for RimStimPlanFractureTemplate::fractureGridResultsForUnitSystem 2026-04-10 14:14:41 +02:00
Kristian Bendiksen c3f5c8688d Update agent instructions about copyright header. 2026-03-30 11:24:56 +02:00
Magne Sjaastad 9b95d89d5c CompletionExport: Add unit tests, test models, and diagrams for MSW export 2026-03-27 14:47:32 +01:00
Magne Sjaastad 30eaac6535 Docs: Update Git and PR conventions
- Restructure Git conventions into sub-sections for better organization
- Add a new convention to exclude test plans from PR descriptions
2026-03-10 13:17:54 +01:00
Magne Sjaastad d9e3967519 Add example on creation of regions based on existing polygons 2026-03-06 08:22:16 +01:00
Magne Sjaastad 50009ac4d2 Use cafPdmUiButton instead of bool PdmField in multiple classes
Replace PdmField<bool> push button pattern with addNewButton() lambdas
in RiaPreferences, RiaPreferencesSummary, RicUserDefinedCalculatorUi,
RimUserDefinedPolylinesAnnotation, RimPolygonFilter, RimFractureTemplate,
RimEllipseFractureTemplate, RimMeshFractureTemplate, and
RicSummaryPlotEditorWidgetCreator.
2026-03-04 09:52:17 +01:00
Magne Sjaastad 61a69bacc4 Use cafPdmUiButton instead of bool in PdmField
* Adopts dynamic PDM buttons with lambda callbacks

Refactors PDM push buttons from boolean fields to use the `addNewButton` API with direct lambda callbacks.

This change enforces a new coding guideline to extract complex or multi-line lambdas to dedicated `on*Clicked()` methods, improving code readability and maintainability.

- Replaces `PdmField` button fields with `PdmUiOrdering::addNewButton` calls.
- Extracts multi-line/control-flow lambdas into named methods in `RimFlowCharacteristicsPlot`, `RimGeoMechCase`, and `RimStatisticsContourMap`.
- Removes obsolete `defineEditorAttribute` overrides and `fieldChangedByUi` logic for these buttons.
- Updates `RimWellPathFracture` to utilize base class-provided button creation.
- Adds new lambda line-count guideline to the coding style documentation.
- Includes minor build fixes, such as adding `cafPdmUiButton.h` and correcting tooltip API usage.
2026-03-03 08:54:45 +01:00
Magne Sjaastad c6dbdf0c79 Improve organization of agent documents 2026-01-23 16:20:29 +01:00
Magne Sjaastad 39c8843f76 Remove python doc
Python doc is now moved to

https://github.com/OPM/ResInsight-UserDocumentation/tree/master/docs
2020-11-06 14:14:49 +01:00
Gaute Lindkvist 9fcfe4fa84 Merge branch 'dev' into feature-analysis-plots-initial 2020-04-22 16:17:09 +02:00
Magne Sjaastad 8662ff90d2 #5792 Python : Add import_summary_case and find summary case from ID
Add example of use and updated documentation
2020-04-17 13:54:19 +02:00
Magne Sjaastad dfc93164d0 Python Doc : Avoid documenting inherited members 2020-04-17 13:54:19 +02:00
Magne Sjaastad 816dbf6274 Add links to documentation sites 2020-04-17 13:54:05 +02:00
Stein Inge Dale 4384ded842 Replaced gRPC related text and removed reference to About-box 2020-04-17 13:53:13 +02:00
Stein Inge Dale 594e0163bd Rework overarching info and addition of installation and config 2020-04-17 13:53:12 +02:00
Gaute Lindkvist 5d86e16029 Update index.rst 2020-04-17 11:28:42 +02:00
Gaute Lindkvist 2f3c950110 Update index.rst 2020-04-17 11:27:10 +02:00
Magne Sjaastad d675db98f6 Update python doc (#5803)
Several improvement and adjustments to the Python documentation

- applied autopep8
- add summary example
- use references to reference other classes and methods
2020-04-16 16:06:18 +02:00
Magne Sjaastad 185e4c15ef #5792 Python : Add import_summary_case and find summary case from ID
Add example of use and updated documentation
2020-04-15 21:58:18 +02:00
Magne Sjaastad f0275df249 Python Doc : Avoid documenting inherited members 2020-04-15 21:58:18 +02:00
Magne Sjaastad fbabe77db6 Add links to documentation sites 2020-04-02 13:03:29 +02:00
Stein Inge Dale adf8a77ad5 Replaced gRPC related text and removed reference to About-box 2020-03-31 16:06:55 +02:00
Stein Inge Dale 4921636949 Rework overarching info and addition of installation and config 2020-03-31 14:15:17 +02:00
Magne Sjaastad ead29ef70f Python Doc : Improve formatting of tables 2020-03-30 14:07:22 +02:00
Stein Inge Dale 0f470aad97 Update README.md 2020-03-25 13:12:52 +01:00
Magne Sjaastad f6c537f5fe Add list of command file commands 2020-03-23 11:34:11 +01:00
Magne Sjaastad 9c7e3f7568 Doc : Improved installation for documentation 2020-03-20 19:28:10 +01:00
Magne Sjaastad b49492535a Configuration for Sphinx 2020-03-20 19:01:04 +01:00