number:
- 1028
- 1002
- 989
- 984
- 963
- 958
- 929
- 924
- 916
- 911
- 897
- 896
- 895
- 894
- 882
- 880
- 874
- 873
- 854
- 844
- 840
- 836
- 827
- 825
- 820
- 806
- 802
- 776
- 775
- 771
- 770
- 764
- 761
- 756
- 754
- 711
- 689
- 688
- 667
- 661
- 659
- 658
- 654
- 641
- 639
- 638
- 637
- 632
- 625
- 624
- 617
- 612
- 611
- 610
- 609
- 607
- 604
- 602
- 601
- 597
- 592
- 586
- 585
- 584
- 570
- 567
- 565
- 561
- 556
- 555
- 551
- 550
- 541
- 535
- 530
- 521
- 520
- 518
- 512
- 511
- 495
- 490
- 489
- 486
- 482
- 480
- 478
- 465
- 462
- 459
- 451
- 448
- 446
- 424
- 420
- 414
- 398
- 394
- 385
- 368
- 354
- 349
- 347
- 337
- 336
- 328
- 326
- 323
- 313
- 311
- 309
- 303
- 301
- 295
- 294
- 292
- 291
- 289
- 288
- 284
- 275
- 273
- 272
- 271
- 269
- 262
- 254
- 247
- 238
- 228
- 226
- 221
- 217
- 216
- 215
- 203
- 197
- 195
- 183
- 179
- 163
- 160
- 159
- 156
- 155
- 154
- 145
- 108
- 84
- 82
- 81
- 80
- 79
- 78
- 65
- 45
title:
- Lack of documentation regarding assignment of roots in SEATS
- Fix warnings when running CLI with Java25+
- Fix parsing of legacy TS meta
- Add web service POC
- Fix config import in ProvidersTopComponent
- Fix missing ARM-based packages in releases
- Listed on awesome-europe
- Feature request to edit the values of user-defined variables (regressors) in the
  GUI
- Add basic Maven archetype module
- Desktop package cleanup
- Can release notes be more detailed in future?
- 3.6.0 changes- different automatically detected outliers?
- 3.6.0 changes- applied UDV that doesn't match existing UDV is allowed?
- 3.6.0 changes- cruncher not automatically switching the transform function?
- Outliers reappear when refreshing (and not saving)
- cruncher capabilities
- '`decomposition.d9-msr-table` produces too many lines in demetra_m'
- '`decomposition.d9-msr` = `[D@15cafec7`'
- What is `activeSpecification` ?
- Charts are slow when displaying lots of observations
- White on white headers
- Action split-into-yearly-components fails on daily data
- build process not including all v2 jar files
- Improve data collector to include any multiple of ChronoUnit
- Problem with creating csv and csv matrix output
- Fix InvalidPathException when displaying exceptions
- User is not warned when overwriting an existing workspace
- '''Copy spec to workspace'' option missing for multiprocessing'
- The function `split into yearly component` doesn't work in snapshot version
- Missing residual trading days test for quarterly series
- Launch two instances of JDemetra+ at the same time
- How to know the date format to apply?
- Reloading an xlsx files in Providers create new SA-Item
- Error in preadjustment series
- Computation of stock td regressors
- GUI unresponsive when an incorrectly specified file is opened in the Providers panel
- Drag and Drop a timeseries from the results to the SA-Processing doubles the series
- Pure X11 in UI is not working
- Cannot scroll a long list of pre-specified outliers
- Make error in saving workspaces explicit
- Add Windows aarch_64 to standalone binaries
- Migrate protobuf-maven-plugin from org.xolstice.maven.plugins to io.github.ascopes
- What is the role of the ts `name` item?
- Migrate OSSRH to Central Portal
- Modifying the `estimationSpec` with a newly created WS affects the `domainSpec`
- Policy concurrent erase the `estimationSpec`
- Saving or not the WS erase the `domainSpec`
- Fix flaky clipboard on Windows
- Assigning user-defined variables (regressors) to regression effect components requires
  clarification
- Unable to remove "Single date" holidays from Calendar
- Cannot use keyboard shortcut to paste series into an empty grid container
- 'Error in `basic check: definition` with userdefined variables'
- How to set priorities in v3?
- Mode is 'Multiplicative' when transform function is 'None'
- Can no longer rename legend items of a chart
- Cannot select all in a grid
- cannot load csv files in via GUI
- Cannot save workspace changes
- What does 'Show all' do in right-click context menu of charts?
- Renaming series in SAProcessing file doesn't work
- Opened workspace is empty
- Stability of canonical decomposition when AR roots are at seasonal frequencies
- Differences in estimation of stochastic components between TRAMO-SEATS and ucarima_estimate
- Unit root limit doesn't work in TRAMO-SEATS
- Missing `oos_mse` and `oos_mean` in `demetra_m`
- Error message for annual totals
- JDemetra+ 3.4.0 - restoring specifications
- Automatic detection of outliers
- Add option to retrieve desktop application version in headless environment
- Add project version to cachedir path
- Desktop application startup fails on JDK 21 and NetBeans Platform 25
- Split into yearly components feature is missing in 3.4.0
- Missing `Independance` and `Normality` in `demetra_m`
- Unknown 'DEBUG' context menu option for Check Last Batch
- Bug in revision history panel
- '`REPOSITORY` or `PREFIX` to name a WS?'
- Duplicated elsewhere - Seasonal x irregular chart missing the latest data
- Last year missing from Seasonal-Irregular (SI) charts
- Meaning of 'specification.regarima.arima.period' data item
- Cannot remove series in check last panel using right-click context menu
- Missing revisions policy in code
- Is there a missing element below Regarima residuals in Diagnostics?
- Unify period display in GUI
- Indirect seasonal adjustment functionality not appearing in GUI
- Unable to refresh multi-document SA
- Locating initial and final unit root options in GUI
- X11 mode options in GUI
- Option Julian Easter freezes multi-document SA almost completely
- x11.mode option has disappeared?
- Java not recognized in 3.3.0 osx-x86_64 release
- Multi-document specifications in workspace XML file
- demetra-m.csv empty column
- user-defined calendar effect names do not appear in pre-procesing
- Misspelling in 'estimate' XML tag
- Adding a message when a WS is saved
- What is the 'period' value for a seasonal outlier (SO)?
- Cannot set fixed outlier coefficients
- '`demetra_m` have different columns with identical names'
- Cannot save updates to user-defined variables (regressors) in the Variables document
- Strange bug affecting start date and other parameters
- No help information for 'Preliminary Check' setting in Specifications panel
- Icons to expand and collapse panes in multi-processing window too small
- Fix SQL queries
- Possible enhancement of the GUI
- Seasonal component undefined in HF SA
- Fix grid parsing when some headers are null
- Fix NPE in SaBatchUI renderer
- User-defined variables with lags
- Fix slow dialog box when opening a file
- Fix default toolbar and menu
- Can't read `.ods` file
- GUI Excel output with version v3.2.2
- Java error "out of bounds" in canonical decomposition
- Regression effect change cannot be saved to workspace in isolation
- Different output between cruncher and GUI
- Option show-provider-nodes cannot be reset between sessions
- Description field is missing
- add benchmarking.results in the content of batch output
- Drag and drop multi-processing
- 'Cannot handle family: Utilities@Calendars'
- Fix NPE when calling contextual menu on variable window
- 'names lost when importing data to utilities '
- 'SAVING WS: no message when overwriting an existing WS '
- 'Import data: rename frequency to aggregation frequency'
- Dictionaries
- Moving plot windows in Main results
- Fix encoding of space characters in URI
- Simplify action enablers
- Missing chart export to SVG
- Cannot open or delete a document (spec) after copying it
- Add more platform-specific packages
- jwsacruncher - misalighned columns in demetra_m.csv
- Link to online help documentation
- Cannot export image to the clipboard
- '''Configure...'' context menu option not working'
- Typo in "Kruskal-Wallis" in summary tables
- Drag and drop from Excel does not import decimal values
- FinalSeasonalFilter in X11ResultsProto
- 'User-defined calendar, one variable fixed the other not. '
- No bench results in JD+ 3.1.1
- Improve I/O of CSV files
- Migrate to Java 21
- Add support of compact notation in ISO 8601 time interval
- Default date format of JDemetra+ outputs
- decimal separator in Txt files
- seasonal filter not shown in X-11
- Split into yearly components
- 'SarimaTradingDaysTest hyperParametersCount with mean '
- Bug with removing star in version 3.0.2
- Different metadata format for raw data path in the XML of SAP
- Exporting and importing spec
- Method naming question
- Difference between `.builder` and `new`
- Not admisible values T-Stat and Correlation of estimates matrix
- Sigma.vector in X-11
- ' CsvInformationFormatterTests fail on my PC'
body:
- |-
  Hello,
  I was working with a jsai item with an ARIMA model with regular order (3,1,0). The three regular autorregressive roots are one real (negative) and two complex. According to the SEATS documentation, the complex roots go to the seasonal or the transitory component, but JDemetra+ is allocating them in the trend component. Is this documented anywhere? If not, could you tell me the part of the code where it does it?
  Thank you and regards,
  Beatriz Abad.
- |
  When running with Java25+, the following warnings are displayed:

  **CLI**
  ```
  WARNING: A restricted method in java.lang.System has been called
  WARNING: java.lang.System::loadLibrary has been called by org.fusesource.hawtjni.runtime.Library in an unnamed module (file:/C:/.../appassembler/lib/jansi-1.18.jar)
  WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module
  WARNING: Restricted methods will be blocked in a future release unless native access is enabled
  ```
- Parsing of legacy TS meta fails on Java25+ with some regional settings (`-Duser.language=fr
  -Duser.region=BE`)
- "Add a proof of concept for a web service in order to validate the technical stack.\n\nThis
  web service serves as a bridge to any application or language.\nIt provides a basic
  web service with two endpoints: \n- a gRPC endpoint which has the best performances
  but a limited set of clients\n- a REST endpoint which has a wider range of clients
  but is less efficient\n\nThese endpoints also provide specifications (.proto files
  and an OpenAPI file, respectively) that can be used to generate client code. They
  are designed to operate both locally and on remote machines.\n"
- Config import in ProvidersTopComponent doesn't work anymore. Export is OK.
- For some reasons, the packages are created at release time but are not added to
  the release page.
- "Hi! \U0001F44B\n\nYour project has been listed on [awesome-europe](https://github.com/GeiserX/awesome-europe),
  a curated list of open source software relevant to the European Union and EEA.\n\nIf
  you'd prefer not to be included, just let me know here and I'll remove it — no questions
  asked.\n\nThanks for building great European open source software!"
- |-
  A nice feature in the JD+ GUI would be the ability to edit the values of user-defined variables (UDVs) in situ, rather than having to reimport CSV or other files containing the edited UDV values.

  Our set-up means it is somewhat tedious to update UDVs. Sometimes, we just want to quickly see what a series would look like if we slightly tweaked or removed a UDV value in an existing period, or if we created a non-zero value in a new period, without having to leave the GUI (because we need to use Excel or Notepad to modify the underlying UDV files).

  The screen shot below shows the in situ regressor editing capabilities of SEASABS, with handy features like 'Edit', 'Insert' and 'Show zeroes':

  <img width="620" height="504" alt="Image" src="https://github.com/user-attachments/assets/bb9e4661-c201-4927-8816-dd971bd2cdc5" />
- |-
  Add basic Maven archetype module to ease the creation of plugins.

  The creation of plugins outside the main repository implies to deal with a lot of tedious work.
  The basic skeleton of a JD+ project is quite complex and most people just copy-paste an old one.

  It would be better to have a template directly linked to the main repository that creates the required plugin structure.

  A previous attempt for JD+ v2 can be found at https://github.com/nbbrd/jdemetra-archetypes

  See https://maven.apache.org/guides/introduction/introduction-to-archetypes.html
- |-
  Some desktop packages located in `jdplus.toolkit.desktop.plugin.core` are not intended to be public.
  Therefore, they should be moved to a private namespace such as `internal.toolkit.desktop.plugin`.
- "Would it be possible for future release notes to be more detailed? It would be
  great to have a better idea of what changes to expect. \n\nI just opened three issues
  with questions about changes in the 3.6.0 release https://github.com/jdemetra/jdplus-main/issues/894
  https://github.com/jdemetra/jdplus-main/issues/895 https://github.com/jdemetra/jdplus-main/issues/896
  and I didn't see any of those things mentioned in the release notes for 3.6.0 https://github.com/jdemetra/jdplus-main/releases/tag/v3.6.0\n\nInformation
  on changes to workspace file structures or to the output from cruncher would especially
  be useful. We have code that reads directly from them, which needs to be adjusted
  if they change.\n\nFor example: in 3.6.0 the format for outliers in the demetra_m
  file changed, so we had to rewrite our code to read them. It'd be ideal if the release
  notes could inform us of things like this- even if they just say that the format
  has changed.\nThanks."
- |-
  Hi, I noticed that the estimated values for most coefficients are slightly different in 3.6.0 to what they were in 3.5.1. The difference tends to be several decimal places in, but in one case I noticed that different outliers were automatically detected.

  ### Questions
  Would the slightly different estimated coefficients sometimes affect automatic outlier detection?
  Has anything else changed with how outliers are detected?
- |-
  Hi, I've noticed a difference between 3.5.1 and 3.6.0 in the way cruncher processes certain workspaces. See my questions at the bottom.

  ### Scenario
  A series that has a user-defined variable called X applied, but there is no UDV called X in the workspace. E.g. The id/name for user1 in SAProcessing.xml does not match any of the UDVs under the Variables folder.
  _I'm not sure this is possible under normal circumstances- we only encountered it in test cases where the workspace file was being incorrectly generated._

  _3.5.1 behaviour:_ Causes the quality to be Undefined and cruncher to not produce output. I.e. no series output csv files are produced, and the demetra_m.csv file is blank except for the series name and the column headers.
  _3.6.0 behaviour:_ Processing is successful, and the applied user defined variable just seems to be ignored.

  ### Questions
  Was this an intentional change?
  Is there anything else that was previously invalid that the cruncher now silently ignores?
- |-
  Hi, I've noticed a difference between 3.5.1 and 3.6.0 in the way cruncher processes certain workspaces. See my questions at the bottom

  ### Scenario
  A series with a log transform and multiplicative decomposition mode which has a 0 or negative value in the original data (or something else that makes a log transform invalid)

  _3.5.1 behaviour:_ Automatically converted by cruncher to an additive decomposition mode with no transform then processed as normal.
  _3.6.0 behaviour:_ The cruncher says the quality is Undefined and gives no output. I.e. no series output csv files are produced, and the demetra_m.csv file is blank except for the series name and the column headers.

  ### Questions
  Was this an intentional change?
  Is this the only scenario in 3.6.0 when a previously valid workspace can no longer be processed?
- |-
  ### Situation

  Some AO disappeared reappeared when refreshing with Arima parameters.

  ### Steps to reproduce

  1) Create a new WS
  2) Create a SA-Processing
  3) Add SA-items
  4) Add AO in the last year for a SA-Item
  5) Save the WS
  6) Refresh in `Last outliers` the SA-Processing
  7) Observe that the AO has disappeared from pointSpec, estimationSpec and domainSpec
  8) Refresh in `Arima parameters`
  9) Observe that the AO has reappeared in the pointSpec and estimationSpec


  ### Example

  https://github.com/user-attachments/assets/07d1ccfb-c0ff-4e0d-bc10-97db4fad41b8
- |+
  Related to #867

  At the moment, in my mind, the cuncher does 3 things:

  - updating the raw data (linked via the ts metadata)
  - refreshing the model (so the estimation policy) according to the chosen refresh policy
  - producing outputs (demetra_m and series)

  But is it possible to choose to run **only one or two** of the tasks described above?

  For example, just producing output or just updating the data without refreshing the model.

- "As in #873, I try this time to extract the `decomposition.d9-msr-table` (with same
  method as in #873 and same ws). My code is the following:\n\n``` r\nlibrary(\"rjwsacruncher\")\n\noptions(\n
  \   cruncher_bin_directory = \"~/../Software/jdemetra-related/jwsacruncher-3.6.0/bin/\",\n
  \   is_cruncher_v3 = TRUE\n)\n\ncruncher_and_param(\n    workspace = \"~/tmp.xml\",\n
  \   short_column_headers = FALSE,\n    matrix_item = \"decomposition.d9-msr-table\"\n)\n\nJDCruncheR:::read_demetra_m(\"~/tmp/Output/SAProcessing-1/demetra_m.csv\")
  |> tibble::as_tibble()\n#> # A tibble: 12 × 2\n#>    X                                                      decomposition.d9.msr…¹\n#>
  \   <chr>                                                  <chr>                 \n#>
  \ 1 \"IPI * RF0610 (frozen)\"                                \"\\\"0.0104949294740451…\n#>
  \ 2 \"0.0019118812762807908\\t0.0021636521086909545\\t0.0016… \"\"                    \n#>
  \ 3 \"5.4893207042966035\\t6.0504163350918\\t6.9948003384795… \"\"                    \n#>
  \ 4 \"IPI * RF0620 (frozen)\"                                \"\\\"0.0236479043344424…\n#>
  \ 5 \"0.006983448796909882\\t0.00565989893753761\\t0.0059742… \"\"                    \n#>
  \ 6 \"3.3862787602747835\\t5.876525065039658\\t3.66874362005… \"\"                    \n#>
  \ 7 \"IPI * RF0811 (frozen)\"                                \"\\\"0.0247395276781426…\n#>
  \ 8 \"0.007237620634189086\\t0.005604557261622108\\t0.007271… \"\"                    \n#>
  \ 9 \"3.418185192144222\\t6.6990962889155155\\t6.49340754097… \"\"                    \n#>
  10 \"IPI * RF0812 (frozen)\"                                \"\\\"4.32518918889231\\t…\n#>
  11 \"0.5731782077680638\\t0.7508493601012142\\t0.7570604056… \"\"                    \n#>
  12 \"7.545976330353604\\t6.073247147239117\\t6.838606540084… \"\"                    \n#>
  # ℹ abbreviated name: ¹​decomposition.d9.msr.table\n```\n\n<sup>Created on 2026-01-27
  with [reprex v2.1.1](https://reprex.tidyverse.org)</sup>\n\n\nAnd opening the demetra_m
  file with Notepad++, I observe that the cruncher created more lines than series:\n\n<img
  width=\"1047\" height=\"394\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/df006f56-64db-482e-be82-bab7ac56b182\"
  />\n\nIs it a bug?\n\nAlso, there are additional quotation marks (around the vector
  values) and the separator is `\\t`.\n\n\n"
- |+
  I try to retrieve the item `decomposition.d9-msr` with the cruncher. I'm using the package {rjwsacruncher} and the [tmp.zip](https://github.com/user-attachments/files/24886125/tmp.zip) workspace.

  Here is my example:

  ``` r
  library("rjwsacruncher")

  options(
      cruncher_bin_directory = "~/../Software/jdemetra-related/jwsacruncher-3.6.0/bin/",
      is_cruncher_v3 = TRUE
  )

  cruncher_and_param(
      workspace = "~/tmp.xml",
      policy = "Complete",
      csv_layout = "vtable",
      short_column_headers = FALSE,
      matrix_item = "decomposition.d9-msr"
  )

  JDCruncheR:::read_demetra_m("~/tmp/Output/SAProcessing-1/demetra_m.csv")
  #>                       X decomposition.d9.msr
  #> 1 IPI * RF0610 (frozen)          [D@15cafec7
  #> 2 IPI * RF0620 (frozen)          [D@5b444398
  #> 3 IPI * RF0811 (frozen)           [D@cb191ca
  #> 4 IPI * RF0812 (frozen)          [D@42f48531
  ```

  <sup>Created on 2026-01-27 with [reprex v2.1.1](https://reprex.tidyverse.org)</sup>


  Is there a bug or is there an encoding issue?
  I don't understand this variable with this format.


- |-
  We can extract an `activeSpecification` from an SA-Item. Does it correspond to the `estimationSpec` or the `pointSpec`?

  Should we rename it to `estimationSpec` or rename `estimationSpec` to `activeSpecification` (linked to #643)?
  If not, what are the differences?

  Thank you
- "High frequencies provide a lot of observations. \nMore than 600000 observations
  seems to be problematic in charts.\n(see `sdmx-dl:/STATCAN_HFED/CCEI%2CDF_HFED_AB%2C1.0/H.CA_AB.CA_BC.NSI`).\n"
- |-
  In grid mode, headers turn white on white as you move the mouse over them.

  https://github.com/user-attachments/assets/b6787118-3f06-4dcf-94bc-42fe4607fb4f
- "Exception:\n\n```\njdplus.toolkit.base.api.timeseries.TsException: Incompatible
  frequencies\n\tat jdplus.toolkit.base.api.timeseries.TsDomain.aggregate(TsDomain.java:240)\n\tat
  jdplus.toolkit.desktop.plugin.components.parts.HasTsCollectionSupport$SplitCommand.yearsOf(HasTsCollectionSupport.java:581)\n\tat
  jdplus.toolkit.desktop.plugin.components.parts.HasTsCollectionSupport$SplitCommand.split(HasTsCollectionSupport.java:599)\n\tat
  jdplus.toolkit.desktop.plugin.components.parts.HasTsCollectionSupport$SplitCommand.execute(HasTsCollectionSupport.java:574)\n\tat
  jdplus.toolkit.desktop.plugin.components.parts.HasTsCollectionSupport$SplitCommand.execute(HasTsCollectionSupport.java:554)\n[catch]
  at ec.util.various.swing.JCommand.executeSafely(JCommand.java:80)\n```"
- "Dear jdemetra team, \nAs jar file (demetra-tstoolkit-2.2.3 ) user available in
  v2, I would like a build process for the version 3 of the same file, or build instructions
  if we have to build it ourselves.\nThank you "
- |
  Current data collector can guess the following [TsUnit](jdplus-main-base/jdplus-toolkit-base-parent/jdplus-toolkit-base-api/src/main/java/jdplus/toolkit/base/api/timeseries/TsUnit.java) from a list of date-value pairs:

  ```java
  YEAR(TsUnit.P1Y, o -> o, 2),
  HALF_YEAR(TsUnit.P6M, o -> o, 6),
  QUADRI_MONTH(TsUnit.P4M, o -> o, 4),
  QUARTER(TsUnit.P3M, o -> o, 2),
  MONTH(TsUnit.P1M, o -> o, 2),
  WEEK_MONDAY(TsUnit.P7D, next(MONDAY), 3),
  DAY(TsUnit.P1D, o -> o, 2),
  HOUR(TsUnit.PT1H, o -> o, 2),
  MINUTE(TsUnit.PT1M, o -> o, 2),
  SECOND(TsUnit.PT1S, o -> o, 2);
  ```

  An improved data collector should be able to guess [TsUnit](jdplus-main-base/jdplus-toolkit-base-parent/jdplus-toolkit-base-api/src/main/java/jdplus/toolkit/base/api/timeseries/TsUnit.java) from any multiple of [ChronoUnit](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/temporal/ChronoUnit.html) such as `P7M` (7 months) or `PT5M` (5 minutes):

  ```java
  YEAR(ChronoUnit.YEARS, o -> o),
  MONTH(ChronoUnit.MONTHS, o -> o),
  WEEK_MONDAY(ChronoUnit.WEEKS, next(MONDAY)),
  DAY(ChronoUnit.DAYS, o -> o),
  HOUR(ChronoUnit.HOURS, o -> o),
  MINUTE(ChronoUnit.MINUTES, o -> o),
  SECOND(ChronoUnit.SECONDS, o -> o);
  ```
- |-
  When outputting the results of seasonal adjustment in csv and csv matrix format, the output fails with error `java.nio.charset.UnmappableCharacterException: Input Length = 1` (more details below). The problem was first seen on version 3.5.1 and is still seen in the newest version 3.6.0 using a computer running Windows 11.

  The problem was seen with time series, that included negative values, such a problem wasn't present in the time series with all data (original series, seasonally adjusted series and trend/seasonal/irregular components) being positive. One minus was all that was needed for the output to fail.

  Output settings used:
  <img width="460" height="246" alt="Image" src="https://github.com/user-attachments/assets/4c558e99-b8f9-4b8f-b581-021221e5ae43" />

  Error details:
  <img width="806" height="367" alt="Image" src="https://github.com/user-attachments/assets/4dfaf445-beeb-4225-8932-edd63c0f8ef6" />
- "The panel used to display exceptions fails when the specified exception contains
  special characters.\n\nHere is the stack strace:\n\n```\njava.nio.file.InvalidPathException:
  Illegal char <:> at index 3: 401: Unauthorized\n\tat java.base/sun.nio.fs.WindowsPathParser.normalize(Unknown
  Source)\n\tat java.base/sun.nio.fs.WindowsPathParser.parse(Unknown Source)\n\tat
  java.base/sun.nio.fs.WindowsPathParser.parse(Unknown Source)\n\tat java.base/sun.nio.fs.WindowsPath.parse(Unknown
  Source)\n\tat java.base/sun.nio.fs.WindowsFileSystem.getPath(Unknown Source)\n\tat
  java.base/java.nio.file.Path.of(Unknown Source)\n\tat jdplus.toolkit.base.tsp.fixme.Files2.extractFile(Files2.java:97)\n\tat
  internal.ui.components.StackTracePrinter$HtmlBuilder.printMessage(StackTracePrinter.java:166)\n\tat
  internal.ui.components.StackTracePrinter$HtmlBuilder.printMessage(StackTracePrinter.java:155)\n\tat
  internal.ui.components.StackTracePrinter.printNameAndMessage(StackTracePrinter.java:94)\n\tat
  internal.ui.components.StackTracePrinter.printStackTrace(StackTracePrinter.java:53)\n\tat
  internal.ui.components.StackTracePrinter$HtmlBuilder.toString(StackTracePrinter.java:218)\n\tat
  jdplus.toolkit.desktop.plugin.components.JExceptionPanel.onExceptionChange(JExceptionPanel.java:106)\n\tat
  jdplus.toolkit.desktop.plugin.components.JExceptionPanel.lambda$new$1(JExceptionPanel.java:98)\n\tat
  java.desktop/java.beans.PropertyChangeSupport.fire(Unknown Source)\n\tat java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown
  Source)\n\tat java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown
  Source)\n\tat java.desktop/java.awt.Component.firePropertyChange(Unknown Source)\n\tat
  jdplus.toolkit.desktop.plugin.components.JExceptionPanel.setException(JExceptionPanel.java:117)\n\tat
  jdplus.toolkit.desktop.plugin.components.JExceptionPanel.create(JExceptionPanel.java:56)\n\tat
  jdplus.toolkit.desktop.plugin.nodes.ExceptionNode$ShowDetails.createComponent(ExceptionNode.java:109)\n\tat
  jdplus.toolkit.desktop.plugin.nodes.ExceptionNode$ShowDetails.lambda$showTopComponent$0(ExceptionNode.java:95)\n\tat
  java.base/java.util.Optional.orElseGet(Unknown Source)\n\tat jdplus.toolkit.desktop.plugin.nodes.ExceptionNode$ShowDetails.showTopComponent(ExceptionNode.java:95)\n\tat
  jdplus.toolkit.desktop.plugin.nodes.ExceptionNode$ShowDetails.actionPerformed(ExceptionNode.java:88)\n\tat
  jdplus.toolkit.desktop.plugin.nodes.ExceptionNode$ShowDetails.actionPerformed(ExceptionNode.java:79)\n\tat
  org.openide.explorer.view.TreeView.performPreferredActionOnNodes(TreeView.java:1651)\n\tat
  org.openide.explorer.view.TreeView$PopupSupport.actionPerformed(TreeView.java:1631)\n\tat
  java.desktop/javax.swing.JComponent$ActionStandin.actionPerformed(Unknown Source)\n\tat
  java.desktop/javax.swing.SwingUtilities.notifyAction(Unknown Source)\n\tat java.desktop/javax.swing.JComponent.processKeyBinding(Unknown
  Source)\n\tat java.desktop/javax.swing.JComponent.processKeyBindings(Unknown Source)\n\tat
  java.desktop/javax.swing.JComponent.processKeyEvent(Unknown Source)\n\tat org.openide.explorer.view.TreeView$ExplorerTree.processKeyEvent(TreeView.java:1894)\n\tat
  java.desktop/java.awt.Component.processEvent(Unknown Source)\n\t...\n```"
- If a user saves a workspace via the JDemetra+ GUI with the same name as an existing
  workspace, then they are not warned about this. Ideally, the user is provided a
  warning that the workspace filename they have chosen is the same as an existing
  one in the directory where they have chosen to save their workspace.
- 'In JDemetra+ 2, you can right click a series in a multiprocessing/SAProcessing
  window, and go to ''Edit'' -> ''Copy Spec. to workspace'' to directly copy the active
  specification to a new custom specification in the workspace. Currently, this feature
  only seems to be present for regular documents in JD3, not for multi-documents.
  Was this intentionally removed, or is it not supposed to be missing? '
- "When I try to split into yearly component a quaterly or monthly series, nothing
  happens and I get the error:\n\n```\nA java.lang.NullPointerException exception
  has occurred.\n\nHowever, the system should continue working without further problems.
  \ \n\nClick Show Details for the stack trace.\n```\n\n\n\n<details>\n  <summary>Full
  log</summary>\n\n\n```\njava.lang.NullPointerException: Cannot invoke \"java.util.Calendar.getFirstDayOfWeek()\"
  because \"this.calendar\" is null\n\tat java.base/java.text.DateFormat.equals(Unknown
  Source)\n\tat java.desktop/java.awt.Component.firePropertyChange(Unknown Source)\n\tat
  ec.util.chart.swing.ATimeSeriesChart.setPeriodFormat(ATimeSeriesChart.java:252)\n\tat
  ec.util.chart.swing.JTimeSeriesChart.setPeriodFormat(JTimeSeriesChart.java:64)\n\tat
  jdplus.toolkit.desktop.plugin.core.components.TsChartUI.onDataFormatChange(TsChartUI.java:239)\n\tat
  jdplus.toolkit.desktop.plugin.core.components.TsChartUI.lambda$enableProperties$0(TsChartUI.java:198)\n\tat
  java.desktop/java.beans.PropertyChangeSupport.fire(Unknown Source)\n\tat java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown
  Source)\n\tat java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown
  Source)\n\tat java.desktop/java.awt.Component.firePropertyChange(Unknown Source)\n\tat
  jdplus.toolkit.desktop.plugin.components.JTsChart.lambda$new$4(JTsChart.java:95)\n\tat
  jdplus.toolkit.desktop.plugin.components.parts.HasObsFormatSupport$HasObsFormatImpl.setObsFormat(HasObsFormatSupport.java:132)\n\tat
  jdplus.toolkit.desktop.plugin.components.JTsChart.setObsFormat(JTsChart.java:63)\n\tat
  jdplus.toolkit.desktop.plugin.components.parts.HasTsCollectionSupport$SplitCommand.execute(HasTsCollectionSupport.java:577)\n\tat
  jdplus.toolkit.desktop.plugin.components.parts.HasTsCollectionSupport$SplitCommand.execute(HasTsCollectionSupport.java:559)\n[catch]
  at ec.util.various.swing.JCommand.executeSafely(JCommand.java:80)\n\tat ec.util.various.swing.JCommand$ActionAdapter.actionPerformed(JCommand.java:138)\n\tat
  java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)\n\tat
  java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)\n\tat
  java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)\n\tat
  java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)\n\tat java.desktop/javax.swing.AbstractButton.doClick(Unknown
  Source)\n\tat java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown
  Source)\n\tat java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown
  Source)\n\tat java.desktop/java.awt.Component.processMouseEvent(Unknown Source)\n\tat
  java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)\n\tat java.desktop/java.awt.Component.processEvent(Unknown
  Source)\n\tat java.desktop/java.awt.Container.processEvent(Unknown Source)\n\tat
  java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)\n\tat java.desktop/java.awt.Container.dispatchEventImpl(Unknown
  Source)\n\tat java.desktop/java.awt.Component.dispatchEvent(Unknown Source)\n\tat
  java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)\n\tat
  java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)\n\tat
  java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)\n\tat
  java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)\n\tat java.desktop/java.awt.Window.dispatchEventImpl(Unknown
  Source)\n\tat java.desktop/java.awt.Component.dispatchEvent(Unknown Source)\n\tat
  java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)\n\tat java.desktop/java.awt.EventQueue$4.run(Unknown
  Source)\n\tat java.desktop/java.awt.EventQueue$4.run(Unknown Source)\n\tat java.base/java.security.AccessController.doPrivileged(Unknown
  Source)\n\tat java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source)\n\tat java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source)\n\tat java.desktop/java.awt.EventQueue$5.run(Unknown Source)\n\tat java.desktop/java.awt.EventQueue$5.run(Unknown
  Source)\n\tat java.base/java.security.AccessController.doPrivileged(Unknown Source)\n\tat
  java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source)\n\tat java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)\n\tat
  org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)\n\tat java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown
  Source)\n\tat java.desktop/java.awt.EventDispatchThread.run(Unknown Source)\n\n```\n\n</details>\n\n"
- |+
  On some quarterly series (sufficiently long), the **residual trading days test** is not displayed. This is reminiscent of issue #315.

  It would be really nice to have a warning or message somewhere to indicate the reason for this absence, as I cannot explain it.

  Here is the screenshot for the quarterly series:

  <img width="1077" height="558" alt="Image" src="https://github.com/user-attachments/assets/95d3e796-ea42-4517-a806-11c9eff653cc" />

  Here are the other series:

  <img width="1077" height="558" alt="Image" src="https://github.com/user-attachments/assets/2ffebebb-bc04-4e0b-9586-b0463efff638" />

  Here are the quarterly series (
  [serie_trim.csv](https://github.com/user-attachments/files/23030956/serie_trim.csv)) I used.

- |
  This is a question that comes up very often in training. I know that there is already a [tool](https://github.com/nbbrd/beanzooka) for running different versions of JDemetra+ (and comparing how they work) in parallel.

  But I don't know if this tool is designed for any beginner or infrequent user of JDemetra+.

  Also, is it completely impossible or really complicated to allow multiple simultaneous instances of JDemetra+?

  Finally, this echoes this old issue jdemetra/jdemetra-app#46 from v2. If it were possible in v3, that would be great!
- "Hi, \n\nFor a series, the date format was `day/month/year`.\nIn the GUI, we therefore
  import it in the format `dd/MM/yyyy`.\n\nBut for other formats, we rely on the JDemetra+
  display without further indication.\n\nHowever, this display can be confusing when
  the value is the same for different formats.\n\nFor example, for the year, the following
  formats display the same thing (`2025`), but only the first three (with lowercase)
  are correct for specifying the year:\n- `yyyy`\n- `yyy`\n- `y`\n- `Y`\n- `YYY`\n-
  `YYYY`\n\nIs it possible to add a documentation page next to this option, for example
  with a table of formats?\n\nThank you"
- |-
  We observe what appears to be a bug.

  ### Description

  When reloading a data file in the Providers tab, new series are added to the open SA-Processing.

  ### Procedure

  1) Open JDemetra+ v3.5.1
  2) Create a new WS
  3) Create a new SAP
  4) Add data from Providers to SAP
  5) Add new points to data file
  6) Re-add the data file under Providers (even if already present and with star)
  7) Click on "Reload"
  8) Series are added again to SAP

  Here's a short video describing the procedure:

  https://github.com/user-attachments/assets/323a11ee-9949-467d-8f43-79b4cdf8ab3b
- |-
  We got an error when trying to display the preadjutment series for RF1011:

  <img width="1101" height="630" alt="Image" src="https://github.com/user-attachments/assets/97b0f236-3644-4d42-8a6b-9ed919b6c341" />

  The series are [here](https://github.com/rjdverse/rjd3workspace/raw/refs/heads/develop/inst/data/IPI_nace4.xlsx) and the series name is RF1011.
  In the example, we just tried to adjust with RSA3.

  <details>
    <summary>Full log</summary>


  ```
  java.lang.ArrayIndexOutOfBoundsException: Index 12 out of bounds for length 12
      at jdplus.toolkit.base.core.data.DataBlock.set(DataBlock.java:707)
      at jdplus.toolkit.base.core.modelling.regression.TrendConstantFactory.fill(TrendConstantFactory.java:32)
      at jdplus.toolkit.base.core.modelling.regression.TrendConstantFactory.fill(TrendConstantFactory.java:20)
      at jdplus.toolkit.base.core.modelling.regression.Regression.matrix(Regression.java:144)
      at jdplus.toolkit.base.core.modelling.GeneralLinearModel.deterministicEffect(GeneralLinearModel.java:204)
      at jdplus.toolkit.base.core.regarima.extractors.RegSarimaModelExtractors$Specific.lambda$new$25(RegSarimaModelExtractors.java:272)
      at jdplus.toolkit.base.api.information.BasicInformationExtractors$ArrayExtractor.getData(BasicInformationExtractors.java:167)
      at jdplus.toolkit.base.api.information.InformationMapping.getData(InformationMapping.java:131)
      at jdplus.toolkit.base.api.information.InformationExtractors.getData(InformationExtractors.java:102)
      at jdplus.toolkit.base.api.information.BasicInformationExtractors$ExtractorDelegate.getData(BasicInformationExtractors.java:245)
      at jdplus.toolkit.base.api.information.InformationMapping.getData(InformationMapping.java:141)
      at jdplus.toolkit.base.api.information.InformationExtractors.getData(InformationExtractors.java:102)
      at jdplus.toolkit.base.api.information.GenericExplorable.getData(GenericExplorable.java:69)
      at jdplus.toolkit.desktop.plugin.TsDynamicProvider.makeCompositeData(TsDynamicProvider.java:214)
      at jdplus.toolkit.desktop.plugin.TsDynamicProvider.compositeTs(TsDynamicProvider.java:185)
      at jdplus.toolkit.desktop.plugin.TsDynamicProvider.getTs(TsDynamicProvider.java:103)
      at jdplus.toolkit.base.api.timeseries.TsFactory.makeTs(TsFactory.java:75)
      at jdplus.toolkit.desktop.plugin.ui.processing.GenericTableUI.getView(GenericTableUI.java:39)
      at jdplus.toolkit.desktop.plugin.ui.processing.GenericTableUI.getView(GenericTableUI.java:23)
      at jdplus.toolkit.desktop.plugin.ui.processing.ProcDocumentItemFactory.getView(ProcDocumentItemFactory.java:98)
      at jdplus.toolkit.desktop.plugin.ui.processing.ProcDocumentViewFactory$View.getView(ProcDocumentViewFactory.java:37)
      at jdplus.toolkit.desktop.plugin.ui.processing.DefaultProcessingViewer.showComponent(DefaultProcessingViewer.java:393)
      at jdplus.toolkit.desktop.plugin.ui.processing.DefaultProcessingViewer.lambda$new$0(DefaultProcessingViewer.java:83)
      at java.beans.PropertyChangeSupport.fire(Unknown Source)
      at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
      at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
      at org.openide.explorer.ExplorerManager$2.run(ExplorerManager.java:866)
      at org.netbeans.modules.openide.util.NbMutexEventProvider$Event.doEvent(NbMutexEventProvider.java:97)
      at org.netbeans.modules.openide.util.NbMutexEventProvider$Event.readAccess(NbMutexEventProvider.java:72)
      at org.netbeans.modules.openide.util.LazyMutexImplementation.readAccess(LazyMutexImplementation.java:66)
      at org.openide.util.Mutex.readAccess(Mutex.java:242)
      at org.openide.explorer.ExplorerManager.fireInAWT(ExplorerManager.java:863)
      at org.openide.explorer.ExplorerManager$1AtomicSetSelectedNodes.fire(ExplorerManager.java:269)
      at org.openide.explorer.ExplorerManager.setSelectedNodes(ExplorerManager.java:280)
      at org.openide.explorer.ExplorerManager$1SetExploredContextAndSelection.run(ExplorerManager.java:368)
      at org.netbeans.modules.openide.util.DefaultMutexImplementation.readAccess(DefaultMutexImplementation.java:172)
      at org.netbeans.modules.openide.util.DefaultMutexImplementation$1R.run(DefaultMutexImplementation.java:1016)
      at org.netbeans.modules.openide.util.DefaultMutexImplementation.doWrapperAccess(DefaultMutexImplementation.java:1033)
      at org.netbeans.modules.openide.util.DefaultMutexImplementation.readAccess(DefaultMutexImplementation.java:162)
      at org.openide.util.Mutex.readAccess(Mutex.java:242)
      at org.openide.explorer.ExplorerManager.setExploredContextAndSelection(ExplorerManager.java:395)
      at org.openide.explorer.view.BeanTreeView.selectionChanged(BeanTreeView.java:124)
      at org.openide.explorer.view.TreeView.callSelectionChanged(TreeView.java:832)
      at org.openide.explorer.view.TreeView$TreePropertyListener.run(TreeView.java:1474)
      at org.netbeans.modules.openide.util.DefaultMutexImplementation$1Exec.run(DefaultMutexImplementation.java:952)
      at org.openide.nodes.Children$ProjectManagerDeadlockDetector.execute(Children.java:1913)
      at org.netbeans.modules.openide.util.DefaultMutexImplementation.postRequest(DefaultMutexImplementation.java:958)
      at org.netbeans.modules.openide.util.DefaultMutexImplementation.postRequest(DefaultMutexImplementation.java:921)
      at org.netbeans.modules.openide.util.DefaultMutexImplementation.postReadRequest(DefaultMutexImplementation.java:287)
      at org.openide.util.Mutex.postReadRequest(Mutex.java:353)
      at org.openide.explorer.view.TreeView$TreePropertyListener.valueChanged(TreeView.java:1443)
      at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(Unknown Source)
      at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(Unknown Source)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(Unknown Source)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(Unknown Source)
      at javax.swing.JTree.setSelectionPath(Unknown Source)
      at javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(Unknown Source)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(Unknown Source)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressedDND(Unknown Source)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(Unknown Source)
      at javax.swing.plaf.basic.BasicTreeUI$MouseHandler.mousePressed(Unknown Source)
      at com.formdev.flatlaf.ui.FlatTreeUI$1.mousePressed(FlatTreeUI.java:272)
      at java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
      at java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
      at java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
      at java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
      at java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
      at java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
      at java.awt.Component.processMouseEvent(Unknown Source)
      at javax.swing.JComponent.processMouseEvent(Unknown Source)
      at java.awt.Component.processEvent(Unknown Source)
      at java.awt.Container.processEvent(Unknown Source)
      at java.awt.Component.dispatchEventImpl(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Window.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
      at java.awt.EventQueue$4.run(Unknown Source)
      at java.awt.EventQueue$4.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Unknown Source)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue$5.run(Unknown Source)
      at java.awt.EventQueue$5.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Unknown Source)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue.dispatchEvent(Unknown Source)
      at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.run(Unknown Source)

  ```

  </details>
- "The `stock_td` function generate the stock trading days regressor. \n\nFrom the
  documentation, the regressors can take the values :\n\n- 1 if the w<sup>th</sup>
  of the month is this day of the week \n- -1 if the wth of the month is a sunday\n-
  0 otherwise\n\nAlso if we provide w > 31, then the last day of the month (28<sup>th</sup>,
  29<sup>th</sup>, 30<sup>th</sup> or 31<sup>st</sup>) will be taken into account
  according to the month.\n\n``` r\nlibrary(\"rjd3toolkit\")\nstock_td(frequency =
  12L, start = c(2000L, 1L), length = 4L, w = 30L)\n#>          Monday Tuesday Wednesday
  Thursday Friday Saturday\n#> Jan 2000     -1      -1        -1       -1     -1       -1\n#>
  Feb 2000      0       1         0        0      0        0\n#> Mar 2000      0       0
  \        0        1      0        0\n#> Apr 2000     -1      -1        -1       -1
  \    -1       -1\nstock_td(frequency = 12L, start = c(2000L, 1L), length = 4L, w
  = 31L)\n#>          Monday Tuesday Wednesday Thursday Friday Saturday\n#> Jan 2000
  \     1       0         0        0      0        0\n#> Feb 2000      0       1         0
  \       0      0        0\n#> Mar 2000      0       0         0        0      1
  \       0\n#> Apr 2000     -1      -1        -1       -1     -1       -1\nstock_td(frequency
  = 12L, start = c(2000L, 1L), length = 4L, w = 32L)\n#>          Monday Tuesday Wednesday
  Thursday Friday Saturday\n#> Jan 2000      1       0         0        0      0        0\n#>
  Feb 2000      0       1         0        0      0        0\n#> Mar 2000      0       0
  \        0        0      1        0\n#> Apr 2000     -1      -1        -1       -1
  \    -1       -1\n```\n\n<sup>Created on 2025-10-10 with [reprex v2.1.1](https://reprex.tidyverse.org)</sup>\n\n\nBut
  for quaterly series, I thought that this limit (31) will be replaced by 92 (30 +
  31 + 31) as it will take the w<sup>th</sup> day of the quarter and not the month
  ?\n\nBut that's not the case, it's the w<sup>th</sup> day of the last month of the
  quarter that is taken into account:\n\n``` r\nlibrary(\"rjd3toolkit\")\nstock_td(frequency
  = 4L, start = c(2000L, 1L), length = 4L, w = 30L)\n#>         Monday Tuesday Wednesday
  Thursday Friday Saturday\n#> 2000 Q1      0       0         0        1      0        0\n#>
  2000 Q2      0       0         0        0      1        0\n#> 2000 Q3      0       0
  \        0        0      0        1\n#> 2000 Q4      0       0         0        0
  \     0        1\nstock_td(frequency = 4L, start = c(2000L, 1L), length = 4L, w
  = 31L)\n#>         Monday Tuesday Wednesday Thursday Friday Saturday\n#> 2000 Q1
  \     0       0         0        0      1        0\n#> 2000 Q2      0       0         0
  \       0      1        0\n#> 2000 Q3      0       0         0        0      0        1\n#>
  2000 Q4     -1      -1        -1       -1     -1       -1\nstock_td(frequency =
  4L, start = c(2000L, 1L), length = 4L, w = 32L)\n#>         Monday Tuesday Wednesday
  Thursday Friday Saturday\n#> 2000 Q1      0       0         0        0      1        0\n#>
  2000 Q2      0       0         0        0      1        0\n#> 2000 Q3      0       0
  \        0        0      0        1\n#> 2000 Q4     -1      -1        -1       -1
  \    -1       -1\n```\n\n<sup>Created on 2025-10-10 with [reprex v2.1.1](https://reprex.tidyverse.org)</sup>\n\nAlso,
  what if w < 0 ?\nCurrently, it seems that we take the stock regressors from w =
  31 and we shifted |w| times the weekdays.\n\n``` r\nlibrary(\"rjd3toolkit\")\nstock_td(frequency
  = 12L, start = c(2000L, 1L), length = 4L, w = 31L)\n#>          Monday Tuesday Wednesday
  Thursday Friday Saturday\n#> Jan 2000      1       0         0        0      0        0\n#>
  Feb 2000      0       1         0        0      0        0\n#> Mar 2000      0       0
  \        0        0      1        0\n#> Apr 2000     -1      -1        -1       -1
  \    -1       -1\nstock_td(frequency = 12L, start = c(2000L, 1L), length = 4L, w
  = 0L)\n#>          Monday Tuesday Wednesday Thursday Friday Saturday\n#> Jan 2000
  \     1       0         0        0      0        0\n#> Feb 2000      0       1         0
  \       0      0        0\n#> Mar 2000      0       0         0        0      1
  \       0\n#> Apr 2000     -1      -1        -1       -1     -1       -1\nstock_td(frequency
  = 12L, start = c(2000L, 1L), length = 4L, w = 1L)\n#>          Monday Tuesday Wednesday
  Thursday Friday Saturday\n#> Jan 2000      0       0         0        0      0        1\n#>
  Feb 2000      0       1         0        0      0        0\n#> Mar 2000      0       0
  \        1        0      0        0\n#> Apr 2000      0       0         0        0
  \     0        1\n```\n\n<sup>Created on 2025-10-10 with [reprex v2.1.1](https://reprex.tidyverse.org)</sup>\n\n\nThank
  you\n"
- |-
  Consider importing a CSV file in the Providers panel and specifying an incorrect date format (such as using 'mm' rather than 'MM', where the former specifies minutes and the latter specifies the month):

  <img width="462" height="501" alt="Image" src="https://github.com/user-attachments/assets/8fac7b3d-29cd-4078-81a3-1876b076f251" />

  After attempting to include some of the imported data in a new Vars document via the Workspace panel, the JD+ GUI becomes glitchy and unresponsive (the Vars-1 window is stuck on the 'Drop data here' prompt, and preview/mouse-over content from the Providers panel clashes with the prompt and won't disappear):

  <img width="874" height="583" alt="Image" src="https://github.com/user-attachments/assets/7c13d973-b719-4621-b389-d2e9fb9b50ec" />

  As another example, the screen shot below shows how the Providers panel remains with the contents of the Workspace panel after attempting to switch to it:

  <img width="207" height="197" alt="Image" src="https://github.com/user-attachments/assets/430b6688-c429-4dfa-8e66-9cab84812313" />

  It would be nice if the GUI would more gracefully handle invalid importation to improve the user experience (whether the date format is mis-specified, or anything else is mis-specified, such as TAB rather than COMMA for the delimiter value, for example).

  To recover in this situation, I essentially have to restart the GUI and lose any unsaved changes. I would suggest this behaviour is a bug, rather than being suggestive of an enhancement.
- |-
  1. Step run a seasonal Adjustment

  <img width="1028" height="703" alt="Image" src="https://github.com/user-attachments/assets/259b11fd-dece-4ac6-b37b-b2a4a7335d6c" />

  2. Drag and Drop a series

  <img width="988" height="364" alt="Image" src="https://github.com/user-attachments/assets/f21f58fe-90d7-44b0-98f0-91c20e3cb1b8" />

  then the Series is doubled, and buggy
- "I selected spec x11, added a timeseries and received \n\n<img width=\"998\" height=\"567\"
  alt=\"Image\" src=\"https://github.com/user-attachments/assets/763aea56-593c-4b2e-8c6f-83e77ba9753e\"
  />\n\n\njava.lang.NullPointerException: Cannot invoke \"jdplus.toolkit.base.core.regsarima.regular.RegSarimaModel.getDescription()\"
  because the return value of \"jdplus.x13.base.core.x13.X13Results.getPreprocessing()\"
  is null\n\tat jdplus.x13.base.core.x13.X13Factory.generateSpec(X13Factory.java:158)\n\nWhen
  I fixed this in X13Factory.java:\n  if (estimation.getPreprocessing() != null) {\n
  \           RegArimaSpec nrspec = RegArimaFactory.getInstance().generateSpec(spec.getRegArima(),
  estimation.getPreprocessing().getDescription());\n            builder.regArima(nrspec);\n
  \       }\n\nI noticed that it isn't possible to refresh an X11 with out a preprocessor.
  We should fix this in one step."
- |-
  For series with many pre-specified outliers, the left-hand panel of the 'Pre-specified outliers' dialogue box does not allow scrolling to see the entire list:

  ![Image](https://github.com/user-attachments/assets/b3e5ade3-02b4-4b05-8d45-9d694812433b)

  Fortunately, any non-visible outliers can still be navigated to using the arrow keys, but clearly this behaviour is not ideal and a scrollbar should be added.
- |-
  We would like to suggest the following feature request that will improve the user experience:

  The JD+ GUI does not provide an explicit error when the operation to save a workspace file has failed. Instead, the operation fails mostly silently, which misleads the user into thinking that their workspace has saved successfully.

  For example, when saving a workspace to a read-only location, there is no explicit feedback to the user to state that the workspace has in fact not been saved, and the experience is indistinguishable to a save operation that has succeeded. The only implicit feedback is via the error icon in the bottom-right corner of the screen. We have detected two related errors for this scenario:

  ![Image](https://github.com/user-attachments/assets/8eb9c64d-9e78-42b5-af5b-d9ef351c7068)

  ![Image](https://github.com/user-attachments/assets/6eb7ee08-092f-4adf-b426-4823ea7bbdf4)

  Ideally, a pop-up message box would appear (with far more user-friendly text than what appears in the images above) and alert the user to the failed save operation when attempting to save to a read-only location, so that they can be aware of this fact and then save the workspace in an alternative location with write-access.

  This scenario is highly relevant for us, since we have many non-sophisticated users of JD+ who are unfamiliar with operating the GUI and in knowing where to save their files, and who will likely ignore the error area in the bottom-right corner of the screen (noting that we have encountered a number of errors that seem irrelevant to the user and will therefore be overlooked by them due to frequent irrelevancy).

  The message could say the following, for example: `Error! You've attempted to save to a read-only location, so the workspace has not been saved. Choose a different location with write-access to save the workspace in.`

  If there are other possible reasons for not being able to save a workspace besides saving to a read-only location, then ideally they should also be accounted for.

  (Similarly, a more explicit message or indication could perhaps be provided when a save operation is successful (via either 'Save' or 'Save As', so that in the absence of it, the user becomes alerted to something having gone wrong. But for failed save operations, an explicit message is preferred.)
- |
  https://github.com/adoptium/adoptium-support/issues/616
- "From https://github.com/xolstice/protobuf-maven-plugin/ \n\n> This project is no
  longer being maintained, and no further contributions will be considered.\n> \n>
  Please consider switching to alternatives, such as:\n> https://github.com/ascopes/protobuf-maven-plugin\n> "
- |
  In every SA-Item, there is a `<ts name XXX>`.

  - What is the goal of this item?
  - Why is it (always?) *`(frozen)`*?
  - is it possible to change this item?
- |-
  It seems that the old way of publishing packages to Maven Central doesn't work anymore (OSSRH).

  ```log
  Error:  Failed to execute goal org.sonatype.plugins:nexus-staging-maven-plugin:1.7.0:deploy (injected-nexus-deploy) on project jdplus-main-bom: Failed to deploy artifacts: Could not transfer artifact eu.europa.ec.joinup.sat:jdplus-toolkit-base-information:jar:3.5.1-20250526.122843-12 from/to ossrh (https://oss.sonatype.org/content/repositories/snapshots/): status code: 403, reason phrase: Forbidden (403) -> [Help 1]
  ```

  There is a new way that uses Central Portal.
  A migration is needed.

  https://central.sonatype.org/faq/what-is-different-between-central-portal-and-legacy-ossrh/#self-service-migration
- |-
  I'm working with the GUI v3.5.0 (latest release).
  Perhaps some of the comments no longer apply, in which case I'd be happy to test the latest snapshot to confirm or inform my outcome.

  I have the impression that with a new WS (i.e., current spec = New in the GUI), when you modify the `estimationSpec` (**Specification** panel on the right in the GUI), and you do **Apply** -> **Save**, then it saves it directly in the `domainSpec`.

  Is it intended?
- "I'm working with the GUI v3.5.0 (latest release).\nPerhaps some of the comments
  no longer apply, in which case I'd be happy to test the latest snapshot to confirm
  or inform my outcome.\n\nThe reproductible steps:\n\n- I work with a *random* WS\n-
  One of my SA-Item has a `domainSpec` with 2 AO\n- I remove one of the 2 AO in the
  `estimationSpec` (**Specification** panel on the right in the GUI) and add another
  AO.\n- I refresh my model with the concurrent policy, then my `estimationSpec` is
  written again with my domainSpec (And the one I took away came back)\n\nIs it a
  normal behaviour ? \nHow do refresh policies behave with different specifications?\n\nThanks"
- |-
  I'm working with the GUI v3.5.0 (latest release).
  Perhaps some of the comments no longer apply, in which case I'd be happy to test the latest snapshot to confirm or inform my outcome.

  ### Saving erases the `domainSpec`

  Here are my reproductible steps:

  1) I'm working with a *random* WS
  2) I modify the `domainSpec` of a SA-ITEM (for example adding an outlier)
  3) I refresh my SA-Item with the policy concurrent
  4) The changes of the `domainSpec` I performed, are erased (for example the outlier I added)

  ### Saving the WS save the `domainSpec`

  If I repeat the same steps but save the WS before refreshing the model, the `domainSpec` remains intact (with the outlier I added).

  ### Conclusion

  Saving or not saving the WS should have no impact on refresh policies (it should not change the specs because the object should be the same between save on the XML and interactivity on the GUI).
- |-
  Flaky clipboard on Windows is a long-standing issue within JDemetra+ desktop.
  It has been [solved by the great NetBeans Platform](https://github.com/apache/netbeans/pull/8361) in its latest release (26).
  This issue is a placeholder to notify JDemetra+ users of the fix.
- |-
  We do not seem to fully understand the different components that user-defined variables (regressors) can be assigned to as per the options shown in the image below:

  ![Image](https://github.com/user-attachments/assets/03e0b3de-bb31-4ba5-abb5-8da8c1ad72f4)

  Could we please request a table listing:
  - what is meant by each option conceptually;
  - which output series regressors are reinserted into or not for each option; and
  - any restrictions on the regressors that can be used for each option?

  To demonstrate our lack of understanding, consider the following series and regressors:
  - [retail.xlsx](https://github.com/user-attachments/files/20277033/retail.xlsx)
  - [Easter_regressors.xlsx](https://github.com/user-attachments/files/20277034/Easter_regressors.xlsx)

  Consider applying the above regressors to the above series and comparing assignment of the regressors to the different components, as shown in the image below. Observe that the regression effect for 'CalendarEffect' is no different from the series with no regressor applied ('Uncorrected'); why is it not taken out of the seasonally adjusted series?

  ![Image](https://github.com/user-attachments/assets/14cb83ba-94ca-43e5-abd6-ad5318324585)

  In the image above, the 'RegEff: CalendarEffect' line is beneath the 'Uncorrected' line, as shown below:

  ![Image](https://github.com/user-attachments/assets/d60056a4-f1f4-4b42-b43a-2244561a3810)

  Also observe that when the regression effect is set to 'SeasonallyAdjusted', the Quality column yields an error:

  ![Image](https://github.com/user-attachments/assets/4b642d35-8b89-4ab5-a17c-beb359741dae)

  ![Image](https://github.com/user-attachments/assets/b36b3848-4bbf-4442-9915-38bd01a2dd85)

  Why is an error encountered? Is there a bug here?

  Could you please explain further @palatej as we have already set up our production system to assign certain regressors to the 'CalendarEffect' regression effect, but only discovered today that it is not as we expected.

  FYI the above was done with v3.5.0.
- I've recently noticed that once added "single date" holidays (those that happened
  once in a timeframe and didn't reoccur) cannot be removed from Calendar. "-" button
  just make selection jump on the next specified holiday, but the items that needs
  to be removed stays even after I press "OK" to finish editing.
- |-
  In JD+ v3.4.0, I can copy a series and paste it into a chart container using the `Ctrl` + `V` keyboard shortcut. This works whether the chart container is empty, or whether it contains series already.

  For grid containers however, the keyboard shortcut does not seem to work unless the user activates an existing column by clicking on a row within it. This therefore means that the user cannot use the keyboard shortcut directly on an empty grid container, because there is no column to be activated.

  In the screen shot below, I have highlighted the two areas on a grid corresponding to my explanation above: the red area is what the user must click on first to allow the keyboard shortcut to work; the blue area doesn't seem to work, although it does work for chart containers (that is, I can click anywhere in a chart container to activate it, and then the keyboard shortcut will work; and so I don't have to click on an existing series for the shortcut to work).

  ![Image](https://github.com/user-attachments/assets/1bcf4976-6d02-4b2b-ae4d-d8324036c2bf)
- |-
  In the latest version (3.5.0) of the GUI, adding User-defined variables and especially affecting the type of regressor causes an error in the `basic checks: definition`

  This concerns the following areas: **Undefined**, **Series** and **Seasonnaly adjusted**. The other fields are not generating errors.

  Here is a screenshot of my testing:

  https://github.com/user-attachments/assets/5d3088c8-9eb8-4b1b-abc6-78e3f47529b9
- |+
  In version 2, it is possible to set priority to SA-Processing:

  ![Image](https://github.com/user-attachments/assets/242bc11b-6306-4990-8e18-c959cbda082d)

  In version 3, the functionnality exists because it is available in R ({rjd3workspace}):

  https://github.com/rjdverse/rjd3workspace/blob/2cdd6a191788e4cfd658e627fe0f27aafad41e1a/R/saprocessing.R#L566-L585

  https://rjdverse.github.io/rjd3workspace/reference/set_priority.html

  However in the GUI, I can't find this functionnality:

  ![Image](https://github.com/user-attachments/assets/07c76f47-9d2d-417e-8b21-1ef21e52b85b)

  How to use this priority in the GUI?

- |-
  My additive series has regarima.transform.function = 'None', but x11.mode is 'Multiplicative':
  ![Image](https://github.com/user-attachments/assets/6934cd41-6613-43d7-8903-3f2deb923f70)

  This is the same series with regarima.transform.function = 'Log', and x11.mode is also 'Multiplicative':
  ![Image](https://github.com/user-attachments/assets/7fc1e851-4e78-4bc7-8749-6c0c207e0bd6)

  In my first screenshot, it appears the seasonal adjustment is additive as appropriate. Can you confirm this is the case (i.e. that x11.mode = 'Multiplicative' isn't affecting it)?

  Is there any way to change x11.mode to 'Additive' through the GUI? When I select transform.function = 'None', the x11.mode option disappears.
- |-
  In prior versions of JD+, I believe I was able to rename legend items, as shown in the example below (where the default name 'Seasonally adjusted' has been replaced with 'SA( with/without auto-outliering)':

  ![Image](https://github.com/user-attachments/assets/fc5f33c9-29a4-43c0-a858-10c561f7b1d7)

  I can no longer right-click on a series in a chart and select an option called 'Rename' as I used to be able to do. Has this feature been removed? If not, could you please explain how to rename legend items?
- |-
  When I click on **Select all** from the right-click context menu of a grid (first image below), nothing happens (second image below):

  ![Image](https://github.com/user-attachments/assets/ea086707-b78d-4bf3-872a-c272939b9c4a)

  ![Image](https://github.com/user-attachments/assets/f8f359a2-76f7-472e-a3dd-5da8a5ed22e8)

  However, the keyboard shortcut `Ctrl` + `A`, or clicking in the top-left corner works as expected:

  ![Image](https://github.com/user-attachments/assets/38d1c9f6-2723-4845-ad99-fbc7537afa70)
- |-
  I have these two files which are identical apart from the format in which they are saved:

  [Test regressors from NGD.xlsx](https://github.com/user-attachments/files/19861056/Test.regressors.from.NGD.xlsx)
  [Test regressors from NGD.csv](https://github.com/user-attachments/files/19861049/Test.regressors.from.NGD.csv)

  In JD+ GUI v3.5.0, when I try and load them in, the xlsx file loads correctly, but the csv file instead yields a mess:

  ![Image](https://github.com/user-attachments/assets/a03e7cb7-a6d3-47a0-bda8-ebdd3575211e)

  For the xlsx file, I loaded it using all the default values. For the csv file, I changed the delimiter from TAB to COMMA but beyond that left all the other values as default.

  So there appears to be something broken in the loading of csv files. While we can import them as xlsx instead as a workaround, it would be more convenient to also be able to import csv's, so can this please be fixed?
- "There appears to be a bug affecting `v3.4.0` and `v3.5.0` regarding the saving
  of workspace changes after saving it for the first time.\n\nIt seems no changes
  made via the Specifications panel are being saved when selecting **File | Save Workspace**
  from the menu bar in the JD+ GUI. \n\nScenario: 1\n\n1. Create a new multi-document
  with a series (using any reference spec). Save the workspace (without having made
  any changes via the Specifications panel). Save the workspace, and as expected,
  a corresponding top-level folder and XML file will be created. The SAProcessing
  file appears to reflect the relevant settings for the series.\n2. Now make any change
  to the series in the Specifications panel, such as changing the **Tolerance** under
  **ESTIMATE**. Then save the workspace.\n3. Inspect the SAProcessing file. The file's
  modified date has changed, but the tolerance change **has not** been written to
  the file.\n\nScenario: 2\n1. Reopen the workspace from scenario 1 above (that is,
  close the GUI and then relaunch it). (The tolerance change will not be reflected,
  since it is not in the XML file.)\n2. Make a change, such as trying to change the
  tolerance level again. Then save the workspace.\n3. Inspect the SAProcessing file
  again. The file's modified date has changed, and now the tolerance change **has
  been** written to the file.\n\nScenario: 3\n1. Reopen the workspace from scenario
  2 above. (The tolerance change will be reflected, since it is in the XML file.)\n2.
  Make a change, such as changing the tolerance level yet again. Then save the workspace.\n3.
  Inspect the SAProcessing file again. The file's modified date has changed, and the
  tolerance change **has been** written to the file.\n\nScenario: 4\n1. Reopen the
  workspace from scenario 3 above. (The tolerance change will be reflected, since
  it is in the XML file.)\n2. Make a change, such as changing the tolerance level
  yet again. Then save the workspace.\n3. Inspect the SAProcessing file again. The
  file's modified date has changed, but the tolerance change **has not** been written
  to the file.\n\nFrom the above scenarios, it seems that no changes are being registered
  after saving the workspace for the first time, but reopening the series allows a
  single change to be made, although there appear to be exceptions to this. It certainly
  seems that multiple saves cannot be successfully done within a single GUI session.\n\n(I
  may have mis-recorded my results for scenario 4 above, because if I keep repeating
  the scenarios from thereon, I get similar results to scenario 3 in that the changes
  are recorded. But I start to lose track because of how circular, repetitive and
  inconsistent things are, so I'm not sure when the exception occurs, if at all.)\n\nAlso
  note:\n\nScenario: 5\n1. Create a new multi-document with a series (using any reference
  spec). Before saving the workspace, make  any change, then save. The change(s) will
  be reflected.\n2. Now make any change to the series in the Specifications panel,
  such as changing the **Tolerance** under **ESTIMATE**. Then save the workspace.\n3.
  Inspect the SAProcessing file. The file's modified date has changed, but the tolerance
  change **has not** been written to the file.\n\nThere are similar scenarios to the
  above when choosing **File | Save Workspace As...** It's become too tedious for
  me to keep track of all the scenarios, so I will stop here, but I think the above
  is enough evidence to suggest that changes made via the Specifications panel are
  not being correctly written back to the underlying XML file from the second savepoint
  onwards within a GUI session."
- |-
  When I right-click on a chart and select 'Show all', it doesn't seem to do anything:

  ![Image](https://github.com/user-attachments/assets/1a8f8989-f1b1-43f6-b6bf-0cf6d48babe7)

  I tried highlighting and unhighlighting various series, and showing and hiding the legend and title, but 'Show all' doesn't seem to do anything for any combination I tried. (For example, if I deselected the title and legend, I thought that 'Show all' would make them both appear again.)

  What is 'Show all' supposed to do?
- |-
  When I rename a series in a multi-document using the right click menu and clicking Rename..., it doesn't rename the series in all parts of the SAProcessing XML file.

  Here I have renamed the series from "Data1 Turnover ; Total (State) ; Total (Industry) ; (frozen)" to "Total turnover". It has successfully updated the sa1.name item, but has not updated the sa1.ts.ts name. Is there any way to update this using the GUI?

  ![Image](https://github.com/user-attachments/assets/712981c1-4b85-4ee9-b261-d072aa1f06b0)
- "I am trying to open the following workspace in the JD+ GUI:\n![Image](https://github.com/user-attachments/assets/9eb958ee-35cb-4020-bbe6-1955e7628b02)\n\nWhen
  I open it, it appears empty. It should have an SAProcessing file and 3 variables,
  but it has none. It also should be called 'multiplevars' but it is called 'Workspace_6'.\n\nhttps://github.com/user-attachments/assets/0cf647b0-a570-4f69-925a-f87492cd4617\n\nCan
  you advise what went wrong? This workspace was created using the JD+ GUI. \n\nNote
  that this issue could be related to https://github.com/jdemetra/jdplus-main/issues/591,
  as the same problem occurs in another workspace where I have previously renamed
  a variable to the same name as another variable (which changed the _name_ field
  but not the _file_ field)."
- |-
  Consider the case of a $(3,1,0)(0,1,1)_{12}$ ARIMA model where we fix the $\phi_1$ and $\phi_2$ coefficients to $0$. In this case, the AR polynomial has two roots with argument $\frac{2\pi}{3}$, hence at exact seasonal frequencies. If we then put the seasonal tolerance (epsphi) to $0$, the canonical decomposition sometimes assign the two AR roots to the transitory component and sometimes to the seasonal component, in a seemingly completely random way (with all the rest of specifications the same).

  This should not happen: the behaviour when there are AR roots at seasonal frequencies and the seasonal tolerance is 0 should be always the same.

  Thank you very much in advance.
- "I'm not sure if this is the appropriate place for this issue, but I'm putting it
  here since it seems to do with the internal workings of the TRAMO-SEATS implementation
  and the ucarima model estimation.\n\nConsider the following R code:\n```\nts <-
  rjd3toolkit::ABS[[1]]\nspec <- rjd3tramoseats::tramoseats_spec()\nres <- rjd3tramoseats::tramoseats_fast(ts,
  spec) \n\nylin <- res$decomposition$stochastics$series$data\nucarima <- res$decomposition$canonicaldecomposition\n\n#
  Trend-cycle estimations\ntrendTS <- res$decomposition$stochastics$t$data # Trend-cycle
  according to TRAMO-SEATS\ntrendUCARIMA <- rjd3toolkit::ucarima_estimate(ylin, ucarima)[,1]
  # Trend-cycle estimated by ucarima_estimate\n\nmax(abs(trendUCARIMA - trendTS))
  # 2.73e-11 (This is 0 as expected)\n\n# Trend-cycle sd estimation\ntrendsdTS <-
  res$decomposition$stochastics$t$data.stde # sd of trend-cycle according to TRAMO-SEATS\ntrendsdUCARIMA
  <- rjd3toolkit::ucarima_estimate(ylin, ucarima)[,4] # sd of trend-cycle estimated
  by ucarima_estimate\n\nmax(abs(trendsdUCARIMA - trendsdTS)) # 0.000189 (This should
  be 0?)\n```\nI would expect that the estimated stochastic components provided by
  the TRAMO-SEATS result and those obtained by applying ucarima_estimate to the UCARIMA
  model given by the canonical decomposition coincide exactly. In this case, while
  the estimation of the trend-cycle coincides (modulo float point precision) the estimations
  of the standard errors don't seem to coincide.\n\nMoreover, in some situations the
  estimation of the components don't coincide either:\n```\nts <- rjd3toolkit::ABS[[1]]\nspec
  <- rjd3tramoseats::tramoseats_spec(\"rsa0\")\nres <- rjd3tramoseats::tramoseats_fast(ts,
  spec) \n\nylin <- res$decomposition$stochastics$series$data\nucarima <- res$decomposition$canonicaldecomposition\n\n#
  Trend-cycle estimations\ntrendTS <- res$decomposition$stochastics$t$data # Trend-cycle
  according to TRAMO-SEATS\ntrendUCARIMA <- rjd3toolkit::ucarima_estimate(ylin, ucarima)[,1]
  # Trend-cycle estimated by ucarima_estimate\n\nmax(abs(trendUCARIMA - trendTS))
  # 0.9364165 (This should be 0?)\n\n# Trend-cycle sd estimation\ntrendsdTS <- res$decomposition$stochastics$t$data.stde
  # sd of trend-cycle according to TRAMO-SEATS\ntrendsdUCARIMA <- rjd3toolkit::ucarima_estimate(ylin,
  ucarima)[,4] # sd of trend-cycle estimated by ucarima_estimate\n\nmax(abs(trendsdUCARIMA
  - trendsdTS)) # 0.068876 (This should be 0?)\n```\n\nWhy is this so? How are the
  components and their standard errors estimated when using the tramoseats_fast function,
  and why they don't coincide with what is obtained via ucarima_estimate?\n\nThank
  you very much in advance."
- |
  It seems that the unit root limit in TRAMO-SEATS (which changes an AR root to a difference if the root is bigger than the limit) doesn't work, neither in the graphical interface nor in the rjdverse packages. For instance, the following code reproduces the issue using the R packages:

  ```
  # Data generation
  set.seed(42)
  ts <- ts(arima.sim(12*10, model=list(ar=c(-0.99))), start = c(2000,1), frequency = 12)

  spec <- rjd3x13::x13_spec()
  spec # unit root limit 0.96

  res <- rjd3tramoseats::tramoseats_fast(ts, spec)
  res$preprocessing # Model (1,0,0)(0,0,0), ar root estimation 0.984
  ```

  And the same happens in the graphical interface. In v2 it worked well.

  Thank you very much in advance.
- |-
  Comparing the list of elements for the output of the csv matrix between v2 and v3, I didn't found the out of sample mean and mse.

  (In v2, they are called `diagnostics.out-of-sample.mse` `diagnostics.out-of-sample.mean`).

  Did I miss something (maybe with another name)?
- When the difference between the annual totals of the sa series and of the raw series
  was too high, an error message was displayed. As that's not an actual error, that
  message should be change to "severe" ("error" should be reserved for bugs or numerical
  problems).
- When specifications are restored, pre-specificied outliers of a DIFFERENT time series
  (the last one with pre-specified outliers) are also imposed.
- 'JDemetra 3.4.0 - Automatic detection of outliers does not run when a seasonal outlier
  is manually imposed. '
- "Add option to retrieve desktop application version in headless environment.\n\nSomething
  like: \n```shell\n$ nbdemetra64.exe --nogui --nosplash --version\n\nJDemetra+ 3.4.0\nJVM:
  21.0.1 (GraalVM Community OpenJDK 64-Bit Server VM 21.0.1+12-jvmci-23.1-b19)\nOS:
  Windows 11 10.0 amd64\n```"
- |-
  Add project version to cachedir path to ease cache problems between versions.
  Example: https://github.com/praxis-live/praxis-live/blob/master/application/src/main/app-resources/etc/praxislive.conf
- |-
  Desktop application startup fails on JDK 21 and NetBeans Platform 25:
  ```shell
  java.lang.UnsupportedOperationException: The Security Manager is deprecated and will be removed in a future release
          at java.base/java.lang.System.setSecurityManager(System.java:429)
          at org.netbeans.TopSecurityManager.install(TopSecurityManager.java:525)
          at org.netbeans.core.NbLifecycleManager.advancePolicy(NbLifecycleManager.java:69)
          at org.netbeans.core.GuiRunLevel.run(GuiRunLevel.java:84)
          at org.netbeans.core.startup.Main.start(Main.java:316)
          at org.netbeans.core.startup.TopThreadGroup.run(TopThreadGroup.java:98)
          at java.base/java.lang.Thread.run(Thread.java:1583)
  ```

  But works on JDK 21 and NetBeans Platform 24:
  ```shell
  WARNING: A terminally deprecated method in java.lang.System has been called
  WARNING: System::setSecurityManager has been called by org.netbeans.TopSecurityManager (file:/REDACTED/jdplus-main/jdplus-main-desktop/jdplus-main-desktop-bin/target/nbdemetra/platform/lib/boot.jar)
  WARNING: Please consider reporting this to the maintainers of org.netbeans.TopSecurityManager
  WARNING: System::setSecurityManager will be removed in a future release
  ```
- Hello! Have updated recently to 3.4.0 version and noticed that splitting chart graphs
  into yearly view isn't availiable anymore. Don't know if it's a bug or intended
  depreciation, but this feature was super useful for visual analysis of seasonal
  patterns and outliers identification...
- "Comparing the list of elements for the output of the csv matrix, `Independence`
  and `Normality` (*REGARIMA residuals*) are missing in version 3. \n\nThese statistics
  were important. Is it possible to reintegrate them into the `demetra_m` matrix?"
- |-
  Is there a reason why there is a 'DEBUG' option in the context menu when right-clicking on a series in the Check Last Batch panel?

  ![Image](https://github.com/user-attachments/assets/9d5728bd-0b0a-4c47-b231-3bd9745528e4)

  Did this menu option accidentally get introduced in debugging and fixing: https://github.com/jdemetra/jdplus-main/issues/511?
- "When I try to access any revision history section, I get the following error :\n\n![Image](https://github.com/user-attachments/assets/aba8fd1a-4704-4ed2-ace3-3de154468c81)\n\nHere
  is the full message:\n\n```\njava.lang.ArrayIndexOutOfBoundsException: Index 262
  out of bounds for length 155 \n\tat jdplus.toolkit.base.api.data.Doubles.get(Doubles.java:89)
  \n\tat jdplus.toolkit.base.api.timeseries.TimeSeriesData.getValue(TimeSeriesData.java:61)
  \n\tat jdplus.toolkit.base.core.timeseries.simplets.analysis.DiagnosticInfo.lambda$asFunction$1(DiagnosticInfo.java:61)
  \n\tat jdplus.toolkit.base.core.timeseries.simplets.analysis.RevisionHistory.seriesRevision(RevisionHistory.java:245)
  \n\tat jdplus.toolkit.base.core.timeseries.simplets.analysis.RevisionHistory.seriesRevision(RevisionHistory.java:228)
  \n\tat jdplus.toolkit.desktop.plugin.ui.JRevisionSeriesView.revisions(JRevisionSeriesView.java:243)
  \n\tat jdplus.toolkit.desktop.plugin.ui.JRevisionSeriesView.showResults(JRevisionSeriesView.java:372)
  \n\tat jdplus.toolkit.desktop.plugin.ui.JRevisionSeriesView.setHistory(JRevisionSeriesView.java:422)
  \n\tat jdplus.toolkit.desktop.plugin.ui.processing.stats.RevisionHistoryUI.getView(RevisionHistoryUI.java:40)
  \n\tat jdplus.toolkit.desktop.plugin.ui.processing.stats.RevisionHistoryUI.getView(RevisionHistoryUI.java:30)
  \n\tat jdplus.toolkit.desktop.plugin.ui.processing.ProcDocumentItemFactory.getView(ProcDocumentItemFactory.java:98)
  \n\tat jdplus.toolkit.desktop.plugin.ui.processing.ProcDocumentViewFactory$View.getView(ProcDocumentViewFactory.java:37)
  \n\tat jdplus.toolkit.desktop.plugin.ui.processing.DefaultProcessingViewer.showComponent(DefaultProcessingViewer.java:387)
  \n\tat jdplus.toolkit.desktop.plugin.ui.processing.DefaultProcessingViewer.lambda$new$0(DefaultProcessingViewer.java:83)
  \n\tat java.beans.PropertyChangeSupport.fire(Unknown Source) \n\tat java.beans.PropertyChangeSupport.firePropertyChange(Unknown
  Source) \n\tat java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
  \n\tat org.openide.explorer.ExplorerManager$2.run(ExplorerManager.java:866) \n\tat
  org.netbeans.modules.openide.util.NbMutexEventProvider$Event.doEvent(NbMutexEventProvider.java:97)
  \n\tat org.netbeans.modules.openide.util.NbMutexEventProvider$Event.readAccess(NbMutexEventProvider.java:72)
  \n\tat org.netbeans.modules.openide.util.LazyMutexImplementation.readAccess(LazyMutexImplementation.java:66)
  \n\tat org.openide.util.Mutex.readAccess(Mutex.java:242) \n\tat org.openide.explorer.ExplorerManager.fireInAWT(ExplorerManager.java:863)
  \n\tat org.openide.explorer.ExplorerManager$1AtomicSetSelectedNodes.fire(ExplorerManager.java:269)
  \n\tat org.openide.explorer.ExplorerManager.setSelectedNodes(ExplorerManager.java:280)
  \n\tat org.openide.explorer.ExplorerManager$1SetExploredContextAndSelection.run(ExplorerManager.java:374)
  \n\tat org.netbeans.modules.openide.util.DefaultMutexImplementation.readAccess(DefaultMutexImplementation.java:172)
  \n\tat org.netbeans.modules.openide.util.DefaultMutexImplementation$1R.run(DefaultMutexImplementation.java:1016)
  \n\tat org.netbeans.modules.openide.util.DefaultMutexImplementation.doWrapperAccess(DefaultMutexImplementation.java:1033)
  \n\tat org.netbeans.modules.openide.util.DefaultMutexImplementation.readAccess(DefaultMutexImplementation.java:162)
  \n\tat org.openide.util.Mutex.readAccess(Mutex.java:242) \n\tat org.openide.explorer.ExplorerManager.setExploredContextAndSelection(ExplorerManager.java:395)
  \n\tat org.openide.explorer.view.BeanTreeView.selectionChanged(BeanTreeView.java:124)
  \n\tat org.openide.explorer.view.TreeView.callSelectionChanged(TreeView.java:832)
  \n\tat org.openide.explorer.view.TreeView$TreePropertyListener.run(TreeView.java:1474)
  \n\tat org.netbeans.modules.openide.util.DefaultMutexImplementation$1Exec.run(DefaultMutexImplementation.java:952)
  \n\tat org.openide.nodes.Children$ProjectManagerDeadlockDetector.execute(Children.java:1913)
  \n\tat org.netbeans.modules.openide.util.DefaultMutexImplementation.postRequest(DefaultMutexImplementation.java:958)
  \n\tat org.netbeans.modules.openide.util.DefaultMutexImplementation.postRequest(DefaultMutexImplementation.java:921)
  \n\tat org.netbeans.modules.openide.util.DefaultMutexImplementation.postReadRequest(DefaultMutexImplementation.java:287)
  \n\tat org.openide.util.Mutex.postReadRequest(Mutex.java:353) \n\tat org.openide.explorer.view.TreeView$TreePropertyListener.valueChanged(TreeView.java:1443)
  \n\tat javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(Unknown Source)
  \n\tat javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(Unknown Source)
  \n\tat javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(Unknown Source)
  \n\tat javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(Unknown Source)
  \n\tat javax.swing.JTree.setSelectionPath(Unknown Source) \n\tat javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(Unknown
  Source) \n\tat javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(Unknown
  Source) \n\tat javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressedDND(Unknown
  Source) \n\tat javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(Unknown Source)
  \n\tat javax.swing.plaf.basic.BasicTreeUI$MouseHandler.mousePressed(Unknown Source)
  \n\tat com.formdev.flatlaf.ui.FlatTreeUI$1.mousePressed(FlatTreeUI.java:265) \n\tat
  java.awt.AWTEventMulticaster.mousePressed(Unknown Source) \n\tat java.awt.AWTEventMulticaster.mousePressed(Unknown
  Source) \n\tat java.awt.AWTEventMulticaster.mousePressed(Unknown Source) \n\tat
  java.awt.AWTEventMulticaster.mousePressed(Unknown Source) \n\tat java.awt.AWTEventMulticaster.mousePressed(Unknown
  Source) \n\tat java.awt.AWTEventMulticaster.mousePressed(Unknown Source) \n\tat
  java.awt.Component.processMouseEvent(Unknown Source) \n\tat javax.swing.JComponent.processMouseEvent(Unknown
  Source) \n\tat java.awt.Component.processEvent(Unknown Source) \n\tat java.awt.Container.processEvent(Unknown
  Source) \n\tat java.awt.Component.dispatchEventImpl(Unknown Source) \n\tat java.awt.Container.dispatchEventImpl(Unknown
  Source) \n\tat java.awt.Component.dispatchEvent(Unknown Source) \n\tat java.awt.LightweightDispatcher.retargetMouseEvent(Unknown
  Source) \n\tat java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
  \n\tat java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) \n\tat java.awt.Container.dispatchEventImpl(Unknown
  Source) \n\tat java.awt.Window.dispatchEventImpl(Unknown Source) \n\tat java.awt.Component.dispatchEvent(Unknown
  Source) \n\tat java.awt.EventQueue.dispatchEventImpl(Unknown Source) \n\tat java.awt.EventQueue$4.run(Unknown
  Source) \n\tat java.awt.EventQueue$4.run(Unknown Source) \n\tat java.security.AccessController.doPrivileged(Unknown
  Source) \n\tat java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source) \n\tat java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source) \n\tat java.awt.EventQueue$5.run(Unknown Source) \n\tat java.awt.EventQueue$5.run(Unknown
  Source) \n\tat java.security.AccessController.doPrivileged(Unknown Source) \n\tat
  java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source) \n\tat java.awt.EventQueue.dispatchEvent(Unknown Source) \n\tat org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)
  \n\tat java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) \n\tat
  java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) \n\tat java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown
  Source) \n\tat java.awt.EventDispatchThread.pumpEvents(Unknown Source) \n\tat java.awt.EventDispatchThread.pumpEvents(Unknown
  Source) \n\tat java.awt.EventDispatchThread.run(Unknown Source) \n```\n\nHere you
  can find my logs:\n\n```\n-------------------------------------------------------------------------------\n>Log
  Session: Wednesday, February 12, 2025, 4:05:22 PM Central European Standard Time\n>System
  Info: \n  Product Version         = v3.3.0\n  Operating System        = Windows
  Server 2019 version 10.0 running on amd64\n  Java; VM; Vendor        = 21.0.4; OpenJDK
  64-Bit Server VM 21.0.4+7-LTS; Eclipse Adoptium\n  Runtime                 = OpenJDK
  Runtime Environment 21.0.4+7-LTS\n  Java Home               = Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\jdk-21.0.4+7-jre\n
  \ System Locale; Encoding = fr_FR (nbdemetra); UTF-8\n  Home Directory          =
  C:\\Users\\UTZK0M.AD\n  Current Directory       = Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\n
  \ User Directory          = C:\\Users\\UTZK0M.AD\\AppData\\Roaming\\nbdemetra\\3\n
  \ Cache Directory         = C:\\Users\\UTZK0M.AD\\AppData\\Local\\nbdemetra\\Cache\\3\n
  \ Installation            = Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\nbdemetra\n
  \                           Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\n
  \                           Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\bin\n
  \                           Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\etc\n
  \                           Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\ide\n
  \                           Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\extra\n
  \                           Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\n
  \ Boot & Ext. Classpath   = \n  Application Classpath   = Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\lib\\boot.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\lib\\org-openide-modules.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\lib\\org-openide-util-lookup.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\lib\\org-openide-util-ui.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\lib\\org-openide-util.jar\n
  \ Startup Classpath       = Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\core\\asm-9.7.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\core\\asm-commons-9.7.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\core\\asm-tree-9.7.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\core\\core-base.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\core\\core.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\core\\org-netbeans-libs-asm.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\core\\org-openide-filesystems-compat8.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\\core\\org-openide-filesystems.jar;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\nbdemetra\\core\\locale\\core_nbdemetra.jar\n-------------------------------------------------------------------------------\nINFO
  [jdplus.toolkit.desktop.plugin.util.Installer]: ChartPanel buffer enabled\nINFO
  [ec.util.desktop.DesktopManager]: Using factory 'ec.util.desktop.impl.WinDesktop$Factory'\nINFO
  [ec.util.desktop.impl.WinRegistry]: Using RegRegistry\nINFO [ec.util.desktop.impl.WinSearch]:
  Using PowerShellSearch\nINFO [ec.util.desktop.impl.Trash]: Using NoOpTrash\nINFO
  [org.netbeans.core.startup.NbEvents]: Turning on modules:\n\torg.openide.util.lookup
  [8.59 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.util [9.33 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.util.ui
  [9.34 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.modules [7.73
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.api.annotations.common/1
  [1.53 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.filesystems [9.38
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.awt [7.93 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.api.progress/1
  [1.73 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.api.progress.nb
  [1.73 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.dialogs [7.72
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.nodes [7.70 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.windows
  [6.102 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.libs.batik.read
  [1.20.0.1 1 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.util.ui.svg
  [1.19 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.editor.mimelookup/1
  [1.65 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.text [6.93 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.api.scripting
  [1.22 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.swing.tabcontrol
  [1.82 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.swing.outline
  [1.59 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.explorer [6.87
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.actions [6.64 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.queries/1
  [1.68 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.api.templates
  [1.33 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.filesystems.nb
  [9.35 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.loaders [7.95
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.api.intent [1.27 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.api.io
  [1.28 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.io [1.74 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.openide.filesystems.compat8
  [9.34 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.swing.plaf [1.67
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.keyring [1.49
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.libs.asm [5.28 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.bootstrap/1
  [2.104 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.startup.base
  [1.87.0.1 1 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.startup/1
  [1.88.0.1 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.sampler
  [1.39 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core/2 [3.76
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.spi.quicksearch [1.52
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.options.api/1
  [1.70 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.libs.flatlaf/1
  [1.19 3.5.1 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.swing.laf.flatlaf
  [1.18 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.swing.laf.dark/1
  [2.20.0.2 2 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.templates/1
  [1.32 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.settings/1
  [1.74 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.sendopts/2
  [2.61 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.projectapi/1
  [1.96 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.projectapi.nb
  [1.29 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.project.libraries/1
  [1.78 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.progress.ui
  [1.58 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.print
  [7.51 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.options.keymap
  [1.62 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.libs.jna/2 [2.20
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.masterfs/2
  [2.80.0.2 2 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.masterfs.windows
  [1.41 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.masterfs.ui
  [2.28.0.2 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.masterfs.nio2
  [1.40 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.keyring.fallback
  [1.33 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.keyring.impl
  [1.49 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.javahelp/1
  [2.66 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.janitor
  [1.18 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.favorites/1
  [1.71 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.editor.mimelookup.impl/1
  [1.57 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.ui/1 [1.70
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.ide/1 [1.66 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.db.metadata.model/1
  [1.36 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.db/1
  [1.94.0.30 30 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.dbapi
  [1.59.0.30 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.autoupdate.services
  [1.81 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.autoupdate.cli
  [1.39 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.windows/2
  [2.110 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.libs.osgi [1.47
  23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.libs.felix [2.40 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.autoupdate.ui
  [1.71 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.modules.core.kit
  [1.56 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.libs.jna.platform/2
  [2.20 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.output2/1
  [1.67 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.network
  [1.37 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.netigso
  [1.56 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.nativeaccess/1
  [1.56 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.multiview/1
  [1.69 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.multitabs/1
  [1.37.0.1 1 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\torg.netbeans.core.io.ui/1
  [1.55 23-2985f1fa57ce0c1877bad0f86d5e5504d65f9286]\n\teu.europa.ec.joinup.sat.jdplus.toolkit.desktop.plugin
  [3.3.0 3.3.0 202410210922]\n\teu.europa.ec.joinup.sat.jdplus.sa.desktop.plugin [3.3.0
  3.3.0 202410210922]\n\teu.europa.ec.joinup.sat.jdplus.x13.desktop.plugin [3.3.0
  3.3.0 202410210922]\n\teu.europa.ec.joinup.sat.jdplus.tramoseats.desktop.plugin
  [3.3.0 3.3.0 202410210922]\n\teu.europa.ec.joinup.sat.jdplus.text.desktop.plugin
  [3.3.0 3.3.0 202410210922]\n\teu.europa.ec.joinup.sat.jdplus.sql.desktop.plugin
  [3.3.0 3.3.0 202410210922]\n\teu.europa.ec.joinup.sat.jdplus.spreadsheet.desktop.plugin
  [3.3.0 3.3.0 202410210922]\n\teu.europa.ec.joinup.sat.jdplus.main.desktop.branding
  [3.3.0 3.3.0 202410210922]\nINFO [org.netbeans.core.network.proxy.NetworkProxyReloader]:
  System network proxy resolver: Windows\nINFO [org.netbeans.core.network.proxy.windows.WindowsNetworkProxy]:
  Windows system proxy resolver: auto detect\nINFO [org.netbeans.core.network.proxy.windows.WindowsNetworkProxy]:
  Windows system proxy resolver: auto - PAC (http://wpad/wpad.dat)\nINFO [org.netbeans.core.network.proxy.NetworkProxyReloader]:
  System network proxy reloading succeeded.\nWARNING [org.openide.filesystems.Ordering]:
  Not all children in Menu/ marked with the position attribute: [Statistical methods],
  but some are: [File, View, Tools, Window, Help, Spacer.instance, org-netbeans-modules-quicksearch-QuickSearchAction.shadow]\nINFO
  [org.netbeans.core.network.proxy.ProxyAutoConfig]: PAC script http://wpad/wpad.dat
  unavailable, proxy disabled\nINFO [org.netbeans.core.network.proxy.NetworkProxyReloader]:
  System network proxy - mode: auto\nINFO [org.netbeans.core.network.proxy.NetworkProxyReloader]:
  System network proxy - pac url: http://wpad/wpad.dat\nINFO [org.netbeans.core.network.proxy.NetworkProxyReloader]:
  System network proxy TEST - http host: \nINFO [org.netbeans.core.network.proxy.NetworkProxyReloader]:
  System network proxy TEST - http port: 0\nINFO [jdplus.toolkit.desktop.plugin.util.Installer]:
  FileSystemView warmed up on 28 files in 1606ms\nWARNING [org.openide.filesystems.Ordering]:
  Not all children in Toolbars/ marked with the position attribute: [Other], but some
  are: [Memory, Standard.xml, Debugging.xml]\nINFO [internal.uihelpers.FixmeCollectionSupplier]:
  Loading lookup cache for interface jdplus.toolkit.desktop.plugin.TsActionOpenSpi\nINFO
  [org.netbeans.ui.metrics.laf]: USG_LOOK_AND_FEEL\nINFO [internal.uihelpers.FixmeCollectionSupplier]:
  Loading lookup cache for interface jdplus.toolkit.desktop.plugin.tsproviders.DataSourceProviderBuddy\nDiagnostic
  information\nInput arguments:\n\t-XX:+UseStringDeduplication\n\t-Xss2m\n\t-Dapple.laf.useScreenMenuBar=true\n\t-Dapple.awt.graphics.UseQuartz=true\n\t-Dsun.java2d.noddraw=true\n\t-Dsun.java2d.dpiaware=true\n\t-Dsun.zip.disableMemoryMapping=true\n\t-Dplugin.manager.check.updates=false\n\t-Dnetbeans.extbrowser.manual_chrome_plugin_install=yes\n\t--add-opens=java.base/java.net=ALL-UNNAMED\n\t--add-opens=java.base/java.lang.ref=ALL-UNNAMED\n\t--add-opens=java.base/java.lang=ALL-UNNAMED\n\t--add-opens=java.base/java.security=ALL-UNNAMED\n\t--add-opens=java.base/java.util=ALL-UNNAMED\n\t--add-opens=java.base/java.nio=ALL-UNNAMED\n\t--add-exports=java.base/sun.reflect.annotation=ALL-UNNAMED\n\t--add-opens=java.prefs/java.util.prefs=ALL-UNNAMED\n\t--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED\n\t--add-opens=java.desktop/javax.swing.text=ALL-UNNAMED\n\t--add-opens=java.desktop/javax.swing=ALL-UNNAMED\n\t--add-opens=java.desktop/java.awt=ALL-UNNAMED\n\t--add-opens=java.desktop/java.awt.event=ALL-UNNAMED\n\t--add-opens=java.desktop/sun.awt.X11=ALL-UNNAMED\n\t--add-opens=java.desktop/javax.swing.plaf.synth=ALL-UNNAMED\n\t--add-opens=java.desktop/com.sun.java.swing.plaf.gtk=ALL-UNNAMED\n\t--add-opens=java.desktop/sun.awt.shell=ALL-UNNAMED\n\t--add-opens=java.desktop/sun.awt.im=ALL-UNNAMED\n\t--add-exports=java.desktop/sun.awt=ALL-UNNAMED\n\t--add-exports=java.desktop/java.awt.peer=ALL-UNNAMED\n\t--add-exports=java.desktop/com.sun.beans.editors=ALL-UNNAMED\n\t--add-exports=java.desktop/sun.swing=ALL-UNNAMED\n\t--add-exports=java.desktop/sun.awt.im=ALL-UNNAMED\n\t--add-exports=java.desktop/com.sun.java.swing.plaf.motif=ALL-UNNAMED\n\t--add-exports=java.desktop/com.apple.eio=ALL-UNNAMED\n\t--add-exports=java.management/sun.management=ALL-UNNAMED\n\t-XX:+IgnoreUnrecognizedVMOptions\n\t-Dnetbeans.user.dir=Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\bin\n\t-Djdk.home=jdk-21.0.4+7-jre\n\t-Dnetbeans.home=Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform\n\t-Dnetbeans.user=C:\\Users\\UTZK0M.AD\\AppData\\Roaming\\nbdemetra\\3\n\t-Dnetbeans.default_userdir_root=C:\\Users\\UTZK0M.AD\\AppData\\Roaming\\nbdemetra\n\t-XX:+HeapDumpOnOutOfMemoryError\n\t-XX:HeapDumpPath=C:\\Users\\UTZK0M.AD\\AppData\\Roaming\\nbdemetra\\3\\var\\log\\heapdump.hprof\n\t-Dsun.awt.keepWorkingSetOnMinimize=true\n\t-Djava.security.manager=allow\n\t-Dnetbeans.dirs=Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\nbdemetra;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\platform;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\bin;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\etc;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\ide;Y:\\Logiciels\\JDemetraplus\\jdemetra-3.3.0\\nbdemetra\\extra\n\texit\nCompiler:
  HotSpot 64-Bit Tiered Compilers\nHeap memory usage: initial 2048,0MB maximum 30208,0MB\nNon
  heap memory usage: initial 7,3MB maximum -1b\nGarbage collector: G1 Young Generation
  (Collections=5 Total time spent=0s)\nGarbage collector: G1 Concurrent GC (Collections=4
  Total time spent=0s)\nGarbage collector: G1 Old Generation (Collections=0 Total
  time spent=0s)\nClasses: loaded=9032 total loaded=9032 unloaded 0\nINFO [org.netbeans.core.ui.warmup.DiagnosticTask]:
  Total memory 429 495 689 216\nINFO [null]: Total physical memory 429 495 689 216\nWARNING
  [org.openide.filesystems.Ordering]: Not all children in Menu/Window/ marked with
  the position attribute: [jdplus-toolkit-desktop-plugin-core-tsproviders-ProvidersTopComponent.shadow,
  jdplus-toolkit-desktop-plugin-ui-variables-VariablesTopComponent.shadow, jdplus-toolkit-desktop-plugin-workspace-ui-DemetraWsUI.shadow],
  but some are: [org-netbeans-core-windows-actions-GlobalPropertiesAction.shadow,
  jdplus-toolkit-desktop-plugin-core-tsproviders-PreviewTssTopComponent.shadow, jdplus-toolkit-desktop-plugin-core-tsproviders-DebugTopComponent.shadow,
  org-netbeans-core-ide-ServicesTabAction.shadow, org-netbeans-core-io-ui-IOWindowAction.shadow,
  SwitchToRecentDocumentAction.shadow, Separator3.instance, ConfigureWindow, org-netbeans-core-windows-actions-ResetWindowsAction.shadow,
  Separator4.instance, CloseWindowAction.shadow, CloseAllDocumentsAction.shadow, CloseAllButThisAction.shadow,
  GroupsMenuAction.shadow, DocumentsAction.shadow]\nWARNING [org.openide.filesystems.Ordering]:
  Found same position 200 for both Menu/Help/jdplus-toolkit-desktop-plugin-core-actions-BrowseOnlineDocAction.shadow
  and Menu/Help/master-help.xml\nINFO [internal.uihelpers.FixmeCollectionSupplier]:
  Loading lookup cache for interface jdplus.toolkit.desktop.plugin.datatransfer.DataTransferSpi\nINFO
  [internal.uihelpers.FixmeCollectionSupplier]: Loading lookup cache for interface
  jdplus.toolkit.desktop.plugin.components.ComponentBackendSpi\nWARNING [org.netbeans.core.multiview.MultiViewTopComponent]:
  The MultiviewDescription instance class jdplus.sa.desktop.plugin.multiprocessing.ui.MultiAnalysisAction$QuickAndDirtyDescription
  is not serializable. Cannot persist TopComponent.\nWARNING [null]: Last record repeated
  6 more times.\nINFO [internal.uihelpers.FixmeCollectionSupplier]: Loading lookup
  cache for interface jdplus.toolkit.desktop.plugin.TsActionSaveSpi\nWARNING [org.netbeans.core.multiview.MultiViewTopComponent]:
  The MultiviewDescription instance class jdplus.sa.desktop.plugin.multiprocessing.ui.MultiAnalysisAction$QuickAndDirtyDescription
  is not serializable. Cannot persist TopComponent.\nWARNING [null]: Last record repeated
  2 more times.\nWARNING [null]: Last record repeated 3 more times.\nWARNING [org.netbeans.modules.options.keymap.LayersBridge]:
  Invalid shortcut: org.openide.loaders.XMLDataObject@6bbe1315[MultiFileObject@7ce11744[Actions/Help/master-help.xml]]\nWARNING
  [org.netbeans.core.multiview.MultiViewTopComponent]: The MultiviewDescription instance
  class jdplus.sa.desktop.plugin.multiprocessing.ui.MultiAnalysisAction$QuickAndDirtyDescription
  is not serializable. Cannot persist TopComponent.\nWARNING [null]: Last record repeated
  3 more times.\nWARNING [org.openide.filesystems.Ordering]: Found same position 1 600
  for both sa.mdoc.context/jdplus-sa-desktop-plugin-multiprocessing-actions-ClearSelection.shadow
  and sa.mdoc.context/jdplus-sa-desktop-plugin-multiprocessing-actions-DeleteAllItems.shadow\n```"
- |-
  In the Java code, two variables are defined with the value `"SAProcessing"`:

  https://github.com/jdemetra/jdplus-main/blob/53c9e99047f3290b6e811b475b631fdebfa04b56/jdplus-main-desktop/jdplus-sa-desktop-plugin/src/main/java/jdplus/sa/desktop/plugin/multiprocessing/ui/MultiProcessingManager.java#L36-L37

  But currently, `REPOSITORY` is used instead of `PREFIX` in the method `getItemPrefix`:

  https://github.com/jdemetra/jdplus-main/blob/53c9e99047f3290b6e811b475b631fdebfa04b56/jdplus-main-desktop/jdplus-sa-desktop-plugin/src/main/java/jdplus/sa/desktop/plugin/multiprocessing/ui/MultiProcessingManager.java#L72-L75

  They have the same value, but is it a typo?
- |-
  Data exists for the seasonal and irregular factors, but the seasonal x irregular chart doesn't present it for years which are not fully complete. For example, the dataset will be up to Q2 2024, but the seasonal x irregular chart will only present data in the graphic up to 2023, so the Q1 2024 is missing in the plot; and separately the Q2 2024 is missing. So the last point seen in the seasonal x irregular chart is for 2023 data. See screenshot. Works fine in versions 2.2+.

  ![Image](https://github.com/user-attachments/assets/d995e39a-671d-4c6a-bd8c-c93c6fe1067c)
- "When using the JDemetra+ GUI (version 3.3.0) the most recent 11 months are missing
  from the Seasonal-Irregular chart. For example, in this series:\n\n![Image](https://github.com/user-attachments/assets/693b2a27-e028-4a8a-9b8e-4b1c9d44fb88)\n\nThe
  January SI chart is \n\n![Image](https://github.com/user-attachments/assets/2c0ee93b-183f-42bd-8f12-27f017428e62)\n\nWhere
  it can be seen that the last date is January 2015, in spite of the series extending
  to March 2016. The same occurs for all months, apart from April.\n\n![Image](https://github.com/user-attachments/assets/bfe6b31c-eb69-46fd-bd55-e08da50767af)\n\nApril
  can be seen to have 2015, which is when it should end.\n\n![Image](https://github.com/user-attachments/assets/ae854800-7fe7-4761-9336-c83969c67226)\n\nBut
  May ends in 2014.\n\nCan this bug please be fixed? Once the JD+ v3 GUI is used in
  production (from July or August 2024 for ABS) having the lastest months in the SI
  chart will be very important for users."
- "What is the meaning of the `specification.regarima.arima.period` data item? It
  seems to be an integer taking a default value of 0.\r\n\r\nI can't seem to find
  any documentation on it."
- "In the check-last panel, a series can be removed by selecting it, and then pressing
  the Delete key.\r\n\r\nFor example, select the series below:\r\n\r\n![image](https://github.com/user-attachments/assets/f04cd9ce-4f60-4760-b8af-2b95d5202297)\r\n\r\nThen
  press the Delete key, and the series will be successfully removed:\r\n\r\n![image](https://github.com/user-attachments/assets/1df7229c-25a3-4b6d-9013-ce2f98adfdac)\r\n\r\nHowever,
  if the user right-clicks on the series, and selects 'Remove', nothing happens:\r\n\r\n![image](https://github.com/user-attachments/assets/8fb730ad-bfb9-4041-b5c6-03b9f4f95789)"
- "Is there a particular reason why the 'FixedAutoRegressiveParameters' refresh policy
  is missing from the code as shown below? https://github.com/jdemetra/jdplus-main/blob/69be4a2cf5cd761b952f20a61db8edbf2dd49ee2/jdplus-main-cli/jdplus-main-cli-bin/src/main/java/jdplus/cruncher/WsaConfig.java#L88\r\n\r\n![image](https://github.com/user-attachments/assets/14dded66-2617-4c2d-ba8a-01ff7c7a8207)\r\n\r\nAlso
  note that in the 'Cruncher (via R)' column of the table under the Overview section
  at: https://jdemetra-new-documentation.netlify.app/a-rev-policies#a-rev-pol-ov,
  no policy is capitalised except for 'FixedAutoRegressiveParameters'; they should
  all be consistent.\r\n\r\n(As an aside, also note: https://github.com/jdemetra/jdplus-main/issues/421
  in which @AQLT first observed this.)"
- "*Issue revealed by Nikolina Rizanovska*\r\n\r\nThere is a white line under Regarima
  residuals (in Diagnostics section):\r\n\r\n![image](https://github.com/user-attachments/assets/95986da4-46fe-4940-917b-e74cbf50f5ed)\r\n\r\nIs
  there a missing element that cannot be displayed for any reason?\r\nProbably `spectral
  td peaks` should be there?\r\n\r\nThank you!"
- "*Issue revealed by Nikolina Rizanovska*\r\n\r\n### Content\r\n\r\nFrom different
  UI element in the GUI, the date (quaterly here for example) are referring to a day
  and not a period. Is it possible to adjust ***the display*** (and not necessarily
  the way it's coded in Java) ?\r\n\r\n\r\n### Example\r\n\r\n- Estimation span (on
  Main results and Pre-processing) and series tables refer to the last month of the
  quarter (e.g. \\[3‑2014 - 6-2022\\]).\r\n\r\n![image](https://github.com/user-attachments/assets/d75c4bbd-1bcf-44fb-95ab-b942d4b8270a)\r\n![image](https://github.com/user-attachments/assets/de5a22ca-3216-478d-9fbb-d3c4a6cc340e)\r\n![image](https://github.com/user-attachments/assets/4a9fbf03-eea9-44eb-a288-5a456474c5c5)\r\n\r\n-
  In charts: the first day of the quarter (e.g. 1. jan. 2014).\r\n\r\n![image](https://github.com/user-attachments/assets/e71c4e8c-e5ca-43f1-b7df-5d03008fd4a9)\r\n\r\n-
  Residuals: the second day of the quarter (e.g. 2. jul. 2004).\r\n\r\n![image](https://github.com/user-attachments/assets/0e952666-e82f-4e01-9022-693cef07d4ac)\r\n\r\nHere
  it is more a axis label issue.\r\n\r\n- Prespecified outliers (on Pre-processing):
  the last month of the quarter (ex. LS (12-2018))\r\n\r\n![image](https://github.com/user-attachments/assets/6b23d60e-8686-4519-ba59-d0ee99b30981)\r\n\r\nIs
  it possible to unify in all this different element the way to display the date?"
- "The documentation in https://jdemetradocumentation.github.io/JDemetra-documentation/pages/case-studies/detailedsa-direct.html
  says that there is a feature for comparing direct and indirect adjustment. The button
  for this functionality doesn't appear in the GUI for me:\r\n![image](https://github.com/user-attachments/assets/d18757d9-cc28-4154-86c9-e980a20f6d82)\r\n"
- "I'm trying to update data from Excel file in multi-document SA with custom made
  specification for each time series, but whether I select \"Refresh\" from document
  header or through right-click menu for one series with any revision option their
  status becomes \"Invalid\" and quality \"Undefined\". Refresh from the same file
  in single document SA works fine, so I think it's not the issue with file or path.
  Program event viewer says \"unexpected exception\" with the following detail:\r\n\r\n`java.lang.IllegalStateException\r\n\tat
  jdplus.toolkit.base.api.timeseries.TsDomain.checkNonEmpty(TsDomain.java:347)\r\n\tat
  jdplus.toolkit.base.api.timeseries.TsDomain.getEndPeriod(TsDomain.java:93)\r\n\tat
  jdplus.toolkit.base.api.timeseries.TsData.getEnd(TsData.java:140)\r\n\tat jdplus.sa.base.api.SaItem.refresh(SaItem.java:295)\r\n\tat
  jdplus.sa.desktop.plugin.multiprocessing.ui.MultiProcessingDocument.refresh(MultiProcessingDocument.java:175)\r\n\tat
  jdplus.sa.desktop.plugin.multiprocessing.ui.SaBatchUI.refresh(SaBatchUI.java:480)\r\n\tat
  jdplus.sa.desktop.plugin.multiprocessing.ui.SaBatchUI.refresh(SaBatchUI.java:465)\r\n\tat
  jdplus.sa.desktop.plugin.multiprocessing.actions.LocalRefreshCurrent.process(LocalRefreshCurrent.java:37)\r\n\tat
  jdplus.sa.desktop.plugin.multiprocessing.actions.LocalRefreshCurrent.process(LocalRefreshCurrent.java:18)\r\n\tat
  jdplus.toolkit.desktop.plugin.ui.ActiveViewAction.actionPerformed(ActiveViewAction.java:42)\r\n\tat
  java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)\r\n\tat
  java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2314)\r\n\tat
  java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:407)\r\n\tat
  java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)\r\n\tat
  java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:374)\r\n\tat
  java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1029)\r\n\tat
  java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1073)\r\n\tat
  java.desktop/java.awt.Component.processMouseEvent(Component.java:6621)\r\n\tat java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3398)\r\n\tat
  java.desktop/java.awt.Component.processEvent(Component.java:6386)\r\n\tat java.desktop/java.awt.Container.processEvent(Container.java:2266)\r\n\tat
  java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4996)\r\n\tat java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)\r\n\tat
  java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)\r\n\tat java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)\r\n\tat
  java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575)\r\n\tat
  java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)\r\n\tat
  java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)\r\n\tat java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)\r\n\tat
  java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)\r\n\tat java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)\r\n\tat
  java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)\r\n\tat java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)\r\n\tat
  java.base/java.security.AccessController.doPrivileged(AccessController.java:400)\r\n\tat
  java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)\r\n\tat
  java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:98)\r\n\tat
  java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)\r\n\tat java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)\r\n\tat
  java.base/java.security.AccessController.doPrivileged(AccessController.java:400)\r\n\tat
  java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)\r\n\tat
  java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)\r\n\tat org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)\r\n[catch]
  at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)\r\n`"
- "Regarding the entries for 'Initial UR (Diff.)' and 'Final UR (Diff.)' at: https://jdemetradocumentation.github.io/JDemetra-documentation/pages/reference-manual/modelling-spec-arima.html\r\n\r\n![image](https://github.com/user-attachments/assets/085b7c7c-97c7-4d20-b863-847c0184fd8c)\r\n\r\n...where
  can they be found in the JD+ GUI? The only options available seem to be the following:\r\n\r\n![image](https://github.com/user-attachments/assets/eef045ec-7f1d-48be-9eb4-f542c8f1a933)\r\n\r\nSimilarly,
  how can a user set the following related options?\r\n\r\n![image](https://github.com/user-attachments/assets/2b5264ca-0185-4d8e-93e4-c4cde3db1047)\r\n\r\nNote
  that 'hrinitial' is not explained at: https://jdemetradocumentation.github.io/JDemetra-documentation/pages/reference-manual/modelling-spec-arima.html\r\n\r\nSee
  also: https://github.com/jdemetra/jdplus-main/issues/479"
- "The x11.mode options menu is only available in the GUI when regarima.transform.function
  = Log.\r\nIn this case, the x11.mode option is between Multiplicative and LogAdditive.\r\n![image](https://github.com/user-attachments/assets/ed08948d-ea65-4f14-b912-99cb3ff9ca05)\r\n\r\nIf
  regarima.transform.function = None, there is no x11.mode option box.\r\n![image](https://github.com/user-attachments/assets/6caff14b-1fcc-43fe-b667-510f6c9a3b8e)\r\n\r\nIf
  regarima.transform.function = Auto, there is also no x11.mode option box.\r\n![image](https://github.com/user-attachments/assets/0fde1fc5-fcbd-48a9-b3c4-d2987eb0c56a)\r\n\r\nFrom
  the code for DecompositionMode, it appears that the options for x11.mode should
  be {Undefined, Additive, Multiplicative, LogAdditive and PseudoAdditive}. I understand
  that some of these are only appropriate under certain transformations, however,
  I am unsure how to set x11.mode to Additive or PseudoAdditive using the GUI."
- "Hi!\r\n\r\nI've tried to estimate possible Julian Easter effect for one of my series
  in a multi-document SA (Jdemetra version 3.2.4, Win10, JDK latest version). Unfortunately
  when I tick the Julian box in the reference specification window the series remain
  unprocessed, even though I click refresh and what is more strange I also couldn't
  get any diagnostics and output for other series in the multi-document. Restarting
  the app and loading the same workspace didn't do the trick. I believe it is some
  kind of a bug, could you please look up into it?\r\n\r\nIf I can provide any additional
  info for resolving, please let me know."
- 'I do not see anymore the X11.mode option since 3.2.4: is it somewhere else?'
- "The default location of JDK/JRJava is not recognized for 3.3.0 osx-x86_64 release:
  the error message `Cannot find java. Please use the --jdkhome switch` is printed.
  \r\nI removed the line `jdkhome=jdk-21.0.4+7-jre` of the `etc/nbdemetra.conf` file
  to make it work."
- "The workspace XML file for a multi-document seemingly has three equivalent tags
  to the 'specification' tag in a single-document:\r\n- 'estimationspec'\r\n![image](https://github.com/user-attachments/assets/3fd865cc-b801-48e7-9df0-990b691f2def)\r\n-
  'pointspec'\r\n![image](https://github.com/user-attachments/assets/e928b046-8ba5-40a4-a098-09edeb6a1994)\r\n-
  'domainspec'\r\n![image](https://github.com/user-attachments/assets/5654f768-96e0-4824-8add-e56da2e62c66)\r\n\r\n_Single-document
  'specification' tag for reference:_\r\n![image](https://github.com/user-attachments/assets/b004124f-5164-42e7-91d3-486ee5aba2c6)\r\n\r\nCan
  you please confirm what the difference is between the three multi-document specification
  tags, and what each are used for?"
- "Second column in the demetra_m.csv file comes full empty.\r\n![demetram_empty](https://github.com/user-attachments/assets/5d4f53b6-ea95-47f2-9a13-313e21698dfe)\r\n"
- "user-defined calendar effect names do not appear in pre-procesing. In version 2.2.2
  the description of the relevant variable was visible. In the new version only the
  default naming given by JD+ itself is shown. It would be useful if the description
  of the variable is visible as it was in the old version.\r\n\r\n![calendar effects](https://github.com/user-attachments/assets/2fdceabe-a013-476f-bffa-5b96b90ae350)\r\n"
- "Observe the misspelling in the word 'esimate' as shown in the screen shot below.
  It is missing the letter 't' (i.e., it should be spelled 'estimate').\r\n\r\n![image](https://github.com/user-attachments/assets/2d8892a6-e6fa-4428-8576-a259855c4592)"
- Is it possible to add a message (for example in the bottom right-hand corner of
  the interface) when a worskpace is saved to inform the user that the WS has been
  saved at its place or an error if it isn't the case ?
- "When inserting a seasonal outlier (SO), the XML file contains a 'period' tag:\r\n\r\n![image](https://github.com/user-attachments/assets/684d1785-a1a1-4924-9325-d26a1b9d3e20)\r\n\r\nI've
  tried searching the R and netlify documentation (e.g. https://jdemetra-new-documentation.netlify.app/a-sa-pre-treatment#outliers),
  but I can't find anything to explain it. What does it mean, and can it be changed
  by the user, or does JD+ estimate it on behalf of the user?"
- "Consider inserting an additive outlier (AO) in a series and setting the 'parameter
  value' as follows:\r\n\r\n![image](https://github.com/user-attachments/assets/c39cd55e-39f2-4310-a502-e9528b20a97c)\r\n\r\nAfter
  clicking on Ok and then applying the changes, the parameter value seems to have
  'disappeared'. If I reopen the 'Pre-specified outliers' dialogue box, the parameter
  value is no longer visible:\r\n\r\n![image](https://github.com/user-attachments/assets/03f51298-2225-44bc-95e7-88912b3a8669)\r\n\r\nThe
  AO is being applied to my series with a value of one in the Regressors matrix as
  expected (Pre-processing -> Regressors), but not with the parameter value I used:\r\n\r\n![image](https://github.com/user-attachments/assets/ece74446-2ddf-488c-8b58-7bbf0d710d47)\r\n\r\nInstead
  of 1.15 I input previously, the above suggests that -0.0043 is being used instead.\r\n\r\nI
  use the term 'value' to refer to the regressor number (which is 1 in this case),
  and I use the term 'coefficient' for the factor that RegARIMA estimates for the
  size of the correction (which I want to set to 1.15 in this case).\r\n\r\n- How
  do I insert a fixed factor?\r\n- What does 'parameter value' in JD+ mean?\r\n- Does
  it refer to 'value' or 'coefficient' as per my definitions?\r\n- Why does the 'parameter
  value' seem to 'disappear' when I reopen the relevant dialogue box?\r\n- And why
  does it not appear in the underlying XML file (see screen shot below)?\r\n\r\n![image](https://github.com/user-attachments/assets/c25bbc7f-e240-4178-906e-4ce7a291a984)\r\n\r\nNote
  that I have been able to successfully specify fixed coefficients via RJDemetra,
  as shown below with a separate example:\r\n\r\n![image](https://github.com/user-attachments/assets/66e8d927-3e0a-4415-a258-ffcec989c6d7)\r\n\r\nIf
  the coefficient is fixed, and the value of the fixed coefficient is 0, will JD+
  re-estimate it via RegARIMA, or will it use a coefficient of 0 (meaning that the
  outlier in effect is not applied to the series)?\r\n\r\nThe same issue above occurs
  for LSs as well. The above was done using a single document, not a multi-document,
  and used JD+ version 3.2.4."
- "When we extract output from jdemetra (with the cruncher or with the GUI), the matrix
  `demetra_m` has different columns with the same name.\r\n\r\nFor example [here](https://github.com/user-attachments/files/16931449/Difference_output_GUI_v2_v3.xlsx)
  is a matrix `demetra_m` generated with the GUI in version 3.\r\nThe name `q` is
  used twice in the colum (Y) and in the column (JL).\r\n\r\nAlso there are a lot
  of unamed columns.\r\n\r\nThis can be confusing for the user, especially as some
  of the colums may contain objects of the same type (integer, character, etc.).\r\nFurthermore,
  reading this matrix with another programming language can be very challenging (since
  the column of a `data.frame` in R must all have a and an unique name).\r\n\r\n Is
  it possible to rename the column or to add a prefix / suffix to indicate in which
  group this variable comes from (for example arima.q and statsQ.q)?"
- "When I make changes to user-defined variables in the Variables document of my workspace,
  certain changes such as inserting new ones or removing existing ones, will not be
  saved. In one instance, when I click on 'Save Workspace', the underlying XML file
  is not updated, and in another instance, I cannot even select 'Save Workspace' as
  it is greyed-out. The only solution to save my changes appears to be selecting 'Save
  Workspace As...' instead, which is highly undesirable.\r\n\r\n![image](https://github.com/user-attachments/assets/3ca10c7a-d5d3-4e7e-bc4e-df79a0121892)\r\n\r\nBelow
  is an example video of not being able to insert a user-defined variable:\r\n\r\nhttps://github.com/user-attachments/assets/e449dea7-39b1-4cec-8575-fe7cc3c68260\r\n\r\nBelow
  is an example video of not being able to remove a user-defined variable:\r\n\r\nhttps://github.com/user-attachments/assets/7bd8ad63-8a39-4d2a-b773-34bc0073d53b"
- "The following describes a bug in JDemetra+ version 3.2.2 that is reproducible under
  certain scenarios but exhibits inconsistency in others.\r\n\r\nConsider the following
  spreadsheet of random time series data: [random_data.xlsx](https://github.com/user-attachments/files/16104095/random_data.xlsx).
  There are two monthly series it contains:\r\n- ‘Series_start_Sep2017’ is a time
  series of random integers (see the spreadsheet formulae for details) ranging from
  **September 2017** to December 2023; and\r\n- ‘Series_start_Apr2017’ is the same
  series, but with additional random data (see the spreadsheet formulae for details)
  at the start, and ranges from **April 2017** to December 2023.\r\n\r\nPerform the
  following steps to reproduce the bug:\r\n1. Load the spreadsheet into JD+.\r\n2.
  Create an X13 single-analysis document for each of the two series above.\r\n3. Accept
  all default JD+ settings (spec: RSA4) but apply the following changes in the Specifications
  panel:\r\n    i. Under SERIES, uncheck ‘Preliminary Check’.\r\n    ii. Under TRANSFORMATION,
  set ‘function’ to ‘Log’.\r\n    iii. Under REGRESSION, disable trading day and Easter.\r\n
  \   iv. Under OUTLIERS, uncheck ‘Is enabled’.\r\n    v. Under X11, set ‘Mode’ to
  ‘Multiplicative’, set ‘Seasonal filter’ to ‘S3X5’, uncheck ‘Automatic Henderson
  filter’, and check ‘Excludeforecast’.\r\n4. Click ‘Apply’ once the changes are made
  in the Specifications panel.\r\n\r\nThese two JD+ series thus have the same data
  and specifications except for additional data in the periods from April 2017 to
  August 2017 for the series ‘Series_start_Apr2017’. See the following workspace files:
  [bug_workspace.zip](https://github.com/user-attachments/files/16104112/bug_workspace.zip):\r\n-
  X13Doc-1 corresponds to the series ‘Series_start_Apr2017'\r\n- X13Doc-2 corresponds
  to the series ‘Series_start_Sep2017'\r\n\r\nObserve the following:\r\n- For the
  series ‘Series_start_Apr2017’, X13 output is produced, indicating a successful run
  without errors. \r\n- For the series ‘Series_start_Sep2017’, the X13 output is blank,
  indicating an error has occurred. (As an aside, please note the importance of surfacing
  errors to the user as raised in: #283.)\r\n\r\nNow try the following:\r\n- For both
  series, uncheck ‘Excldudeforecast’ in the Specifications panel, and apply the changes.\r\n
  \   - Observe that the series ‘Series_start_Sep2017’ now runs successfully.\r\n-
  For both series, change the underlying spreadsheet data (that is, generate new random
  data).\r\n    - Observe that the outcome is the same: the series ‘Series_start_Apr2017’
  remains successful, but the series ‘Series_start_Sep2017’ remains unsuccessful.\r\n
  \   - This seems to suggest that the series’ original data values are themselves
  not the cause of the bug.\r\n\r\n**Why does the different starting date prevent
  the series ‘Series_start_Sep2017’ from running successfully?\r\nWhy does including
  forecasts (that is, unchecking ‘Excludeforecast’) solve the issue?**\r\n\r\nWe can
  reproduce the bug similarly in the Cruncher, suggesting the bug is in the core JDemetra+
  libraries. Specifically, if the series demonstrating this bug is run through the
  Cruncher, it produces no output aside from a demetra_m.csv file. That file contains
  nothing but the name of the series. \r\n\r\nWe also experimented with other series.
  Some series ran successfully only when the start period was anything but August,
  September, October or November. For other series, even with 'ExcludeForecast' set
  as true, these months were not an issue. This suggests the issue may be related
  to the original data values, contrary to what is mentioned above, or to some other
  combination of parameters. We also experimented with changing the length of the
  series; doing so does not appear to be related to the issue."
- "When clicking on a seasonal adjustment parameter setting in the Specifications
  panel, help information is displayed for each one, such as for 'function':\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/3bec76e6-e709-48a6-a246-980e5c9060f9)\r\n\r\nHowever,
  for 'Preliminary Check', no such information is displayed:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/f7fac561-d6b0-4b2d-8fb4-2dd4662bc77a)\r\n"
- "Is it intentional to have the buttons highlighted in the image below so small?
  They are very hard to click since they are so small, and I suspect many users miss
  seeing them because they are so small, especially in the latter image.\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/afccad96-d618-44bc-b3b0-358b3a0d186e)\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/d45838a5-af27-44f1-815e-f5f9d5e0d049)\r\n"
- SQL queries fail on cube with more than 2 dimensions.
- "Dear all, \r\nI noticed that if an SA-Processing is renamed, the new name is immediately
  reflected in the SA-Processing window but not in the menu bar (only after closing
  and reopening the Workspace). Would it be possible to fix this please? \r\n\r\nBest
  greetings, \r\nVéronique"
- "When I try to adjust (SA) a HF series and I plot the different seasonal patterns,
  I get the same legend for the different periodicity:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/c340cc62-69ed-42ba-ac85-5244b24fcba3)\r\n\r\nIs
  it possible to add an information about:\r\n\r\n- the periodicity used (annual,
  weekly, daily...)\r\n- or with the value of the periodicity (p = 365.2425, p = 7,
  p = 31...)\r\n\r\nto differentiate the two components?\r\n\r\nThank you!"
- "IDE log:\r\n```\r\njava.lang.IndexOutOfBoundsException: Index 48 out of bounds
  for length 48\r\n               at java.base/jdk.internal.util.Preconditions.outOfBounds(Unknown
  Source)\r\n               at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Unknown
  Source)\r\n               at java.base/jdk.internal.util.Preconditions.checkIndex(Unknown
  Source)\r\n               at java.base/java.util.Objects.checkIndex(Unknown Source)\r\n
  \              at java.base/java.util.ArrayList.get(Unknown Source)\r\n               at
  jdplus.toolkit.base.tsp.grid.GridReader.readPeriodByRow(GridReader.java:223)\r\n
  \              at jdplus.toolkit.base.tsp.grid.GridReader.read(GridReader.java:94)\r\n
  \              at internal.spreadsheet.base.api.grid.SheetGrid.readSheet(SheetGrid.java:111)\r\n
  \              at internal.spreadsheet.base.api.grid.SheetGrid.getSheetByName(SheetGrid.java:80)\r\n
  \              at internal.spreadsheet.base.api.grid.SheetGrid.getSheetByName(SheetGrid.java:55)\r\n
  \              at internal.spreadsheet.base.api.CachedSpreadSheetConnection.getSheetByName(CachedSpreadSheetConnection.java:60)\r\n
  \              at internal.spreadsheet.base.api.SpreadSheetSupport$PooledSpreadSheetConnection.getSheetByName(SpreadSheetSupport.java:224)\r\n
  \              at internal.spreadsheet.base.api.SpreadSheetSupport.getData(SpreadSheetSupport.java:124)\r\n
  \              at jdplus.toolkit.base.tsp.stream.TsStreamAsProvider.fill(TsStreamAsProvider.java:146)\r\n
  \              at jdplus.toolkit.base.tsp.stream.TsStreamAsProvider.getTs(TsStreamAsProvider.java:104)\r\n
  \              at jdplus.spreadsheet.base.api.SpreadSheetProvider.getTs(SpreadSheetProvider.java:67)\r\n```"
- "IDE log:\r\n```\r\njava.lang.NullPointerException: Cannot invoke \"jdplus.toolkit.base.api.processing.ProcessingLog.all()\"
  because the return value of \"jdplus.sa.base.api.SaEstimation.getLog()\" is null\r\n
  \              at jdplus.sa.desktop.plugin.multiprocessing.ui.SaBatchUI$WarningsRenderer.getTableCellRendererComponent(SaBatchUI.java:1165)\r\n
  \              at java.desktop/javax.swing.JTable.prepareRenderer(Unknown Source)\r\n```"
- User-defined variables with lags are not included in the model
- "The file selection dialogue box can sometimes appear very slowly.\r\nThe problem
  seems to be related to the operating system, the network and the user's desktop
  shortcuts.\r\n\r\nSo far, the possible causes are a combination of the following:\r\n-
  Windows OS\r\n- Some disconnected network drives (such as disabled corporate VPN)\r\n-
  Some links to these disconnected drives or to missing files\r\n\r\nThe cause could
  be the use of the operating system icon of a disconnected network drive from the
  current Swing Look&Feel.\r\nThis problem is difficult to reproduce and is often
  hidden by multiple layers of caches.\r\n\r\nThe class `javax.swing.filechooser.FileSystemView`
  seems to be the main source of problems. Expecially:\r\n- `FileSystemView#getChooserComboBoxFiles()`:
  its result contains network drives on Windows\r\n- `FileSystemView#getChooserShortcutPanelFiles()`\r\n-
  `FileSystemView#getSystemIcon(File)`\r\n- `FileSystemView#getSystemIcon(File, int,
  int)` \r\n- `FileSystemView#getSystemDisplayName(File)`\r\n"
- Remove some default items from the toolbar and menu of the NetBeans Platform
- "On this issue (jdemetra/jdemetra-app#881) I got an issue while importing `.ods`
  files with V2 and V3 (https://github.com/jdemetra/jdemetra-app/issues/881#issuecomment-2115573274)\r\n\r\nIs
  it resolved in V3?"
- "Dear all, \r\n\r\nI still have problems to create an Excel output with the GUI
  of the newest version of JDemetra+ (v3.2.2). \r\nI always get the following error
  message: \r\n\r\nCan't generate output (Excel)\r\njava.io.IOException: Cannot find
  spreadsheet writer for file 'C:\\Test_JDemetra_plus\\Test_JDemetra_3.2.2\\CLV_1_AfterFirstBreak\\CUP_1_BeforeFirstBreak'\r\n\r\nOur
  IT team thinks that the issue comes from JDemetra+. What could be the reason behind
  this and what can I do to solve the problem? \r\nThank you very much in advance
  for your help, \r\nBest greetings, \r\nVéronique\r\n\r\n"
- "We have encountered a bug in JDemetra+ when performing the canonical decomposition
  of some ARIMA models. The problem appeared with two series in production in the
  v2 GUI, but still persists in v3. It seems to affect monthly series with ARIMA model
  (2,1,1)(0,1,0) and specific coefficients. \r\n\r\nThe problem can be reproduced
  using the `rjd3toolkit` package with the following code:\r\n```\r\nmodel <- rjd3toolkit::sarima_model(period
  = 12, phi = c(0.183055, 0.0449044), d = 1, bd = 1, theta = -0.499883)\r\nrjd3toolkit::sarima_decompose(model)\r\n```\r\nThe
  error we get is:\r\n```\r\nError en .jcall(\"jdplus/toolkit/base/r/arima/UcarimaModels\",
  \"[B\", \"toBuffer\", : \r\n  java.lang.ArrayIndexOutOfBoundsException: Index 1
  out of bounds for length 1\r\n```"
- "When I change the 'Regression effect' for a user-defined variable (see first image
  below) and apply the change in the Specifications panel, I am not able to then save
  the workspace (see second image below).\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/ccb4e829-70d0-424e-9ee7-c478594a8129)\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/38aa602f-b792-47f2-8b87-d298840906c5)\r\n\r\nA
  workaround for this issue is to simultaneously update some other parameter, apply
  both changes, save the workspace, and then undo the other parameter change, but
  clearly this is not the desired behaviour."
- "I try to compare the outputs generated by the cruncher and by the GUI (V2 and v3)
  and I get a lot of differences.\r\n\r\n\r\n### First: the names\r\n\r\nBecause the
  colnames of `demetra_m` matrix are very different from V2 to V3 and from GUI and
  cruncher\r\n\r\n### Second: the content\r\n\r\nThe dimension of the matrix are very
  different:\r\n\r\nnumber of columns:\r\n\r\n|          | V2  | V3  |\r\n|----------|-----|-----|\r\n|
  Cruncher | 318 | 305 | \r\n| GUI      | 299 | 240 |\r\n\r\nSo the content is different.\r\n\r\n###
  A small example: the Q information\r\n\r\nIn version 2 it was possible to generate
  Q-Stats and with a quality indicator (Severe, Good, Bad...). In v3, it is no longer
  there: you have `NA` values with the cruncher and no column with the GUI.\r\n\r\nSo
  my questions:\r\n\r\n- Where can we find an exhaustive and updated list of output
  for the cruncher?\r\n- Is it possible to make all the outputs available in the GUI
  also available in the cruncher? \r\n- Is it possible to keep some information from
  V2 (like the variable q.2 for the status (Severe, Good, Bad...) fo the Q-stat)?"
- "If you uncheck `Show provider nodes` option in contextual menu of `Providers` tabs
  and then close the application, you will be able to check it again but the result
  won't be stored and you will have to do it again and again.\r\n\r\n![2024-05-21
  14_00_19-Window](https://github.com/jdemetra/jdplus-main/assets/8778378/bc3b1e81-0065-45ab-bf23-54ce30ff62b3)\r\n\r\nIt
  seems that restoring the default value of the option doesn't change the old value.\r\nThis
  bug may affect other options as well.\r\n "
- "Comparing v2.2.4 and v3.2.2, with the same variables, the `Description` field is
  missing when creating variables in a workspace:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/8d58f810-23b0-48c8-9025-a13d761d13eb)\r\n\r\nIs
  it possible to add this field, based on the series name (from the file) as in v2
  ?"
- "Would it be possible to add the output benchmarking.result (i.e. SA series after
  benchmarking) to the content list of the results we can export via Batch output?
  This was there in v2 (see snapshot) but not yet in v3.\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/95612140/c299449f-454f-4abe-9e4f-432b162f32d2)\r\n"
- "Compared with v2, a quick drag and drop of the data no longer succeeds with multi-processing
  (‘Statistical methods’ - ‘Seasonal Adjustment’ - ‘Multi Processing’ - ‘New’). \r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/95612140/acfcda89-5098-40cf-b45b-8d1f1ed357f3)\r\n"
- "When running **_locally,_** there do not seem to be any issues with the application.
  \r\n\r\nHowever, when trying to run this in an **_AWS Lambda function_**, \r\nI
  get the java.io.IOException: Cannot handle family: Utilities@Calendars\r\n\r\nWould
  you happen to know what part of the application causes this/the reason behind such
  an error?\r\n\r\n![Error log](https://github.com/jdemetra/jdplus-main/assets/30942365/07ca876f-8508-45b4-9a93-d1899c6bdb30)\r\n\r\n**Details
  of the error:**\r\nMay 08, 2024 12:58:25 AM jdplus.cruncher.App reportException\r\nSEVERE:
  null\r\njava.io.IOException: Cannot handle family: Utilities@Calendars\r\nat internal.toolkit.base.workspace.file.SafeHandler.get(SafeHandler.java:49)\r\nat
  internal.toolkit.base.workspace.file.SafeHandler.loadValue(SafeHandler.java:59)\r\nat
  internal.toolkit.base.workspace.file.FileWorkspaceImpl.load(FileWorkspaceImpl.java:133)\r\nat
  jdplus.toolkit.base.workspace.WorkspaceUtility.loadAllCalendars(WorkspaceUtility.java:72)\r\nat
  jdplus.toolkit.base.workspace.WorkspaceUtility.context(WorkspaceUtility.java:62)\r\nat
  jdplus.cruncher.App.process(App.java:109)\r\nat jdplus.cruncher.App.main(App.java:73)\r\nat
  au.gov.abs.sats.CruncherLambdaHandler.handleRequest(CruncherLambdaHandler.java:48)\r\nat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\nat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)\r\nat
  java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)\r\nat
  java.base/java.lang.reflect.Method.invoke(Unknown Source)\r\nat com.amazonaws.services.lambda.runtime.api.client.EventHandlerLoader$PojoMethodRequestHandler.handleRequest(EventHandlerLoader.java:285)\r\nat
  com.amazonaws.services.lambda.runtime.api.client.EventHandlerLoader$PojoHandlerAsStreamHandler.handleRequest(EventHandlerLoader.java:202)\r\nat
  com.amazonaws.services.lambda.runtime.api.client.EventHandlerLoader$2.call(EventHandlerLoader.java:905)\r\nat
  com.amazonaws.services.lambda.runtime.api.client.AWSLambda.startRuntime(AWSLambda.java:245)\r\nat
  com.amazonaws.services.lambda.runtime.api.client.AWSLambda.startRuntime(AWSLambda.java:197)\r\nat
  com.amazonaws.services.lambda.runtime.api.client.AWSLambda.main(AWSLambda.java:187)\r\nIOException:
  Cannot handle family: Utilities@Calendars"
- "```\r\nSEVERE [global]\r\njava.lang.NullPointerException: Cannot invoke \"String.endsWith(String)\"
  because \"path\" is null\r\n\tat org.openide.util.lookup.Lookups.forPath(Lookups.java:206)\r\n\tat
  org.openide.util.Utilities.actionsForPath(Utilities.java:1953)\r\n\tat jdplus.toolkit.desktop.plugin.ui.Menus.createActions(Menus.java:39)\r\n\tat
  jdplus.toolkit.desktop.plugin.ui.Menus.fillMenu(Menus.java:68)\r\n\tat jdplus.toolkit.desktop.plugin.ui.Menus.fillMenu(Menus.java:64)\r\n\tat
  jdplus.toolkit.desktop.plugin.workspace.ui.WorkspaceTopComponent.fill(WorkspaceTopComponent.java:65)\r\n\tat
  jdplus.toolkit.desktop.plugin.ui.ActiveViewManager$1.menuSelected(ActiveViewManager.java:98)\r\n```\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/8778378/ab822643-8497-4a95-8626-41361d5c2235)\r\n"
- "names lost when importing data to utilities : in v2 at least names in labels, in
  v 3.2.2, no names at all, the user has to rename carefully according to order of
  dragging from provider \r\n"
- "when saving a WS no message when overwriting an existing ws \r\n\r\nwould be useful"
- "rename frequency to aggregation frequency in data import wizard \r\notherwise very
  confusing\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/43274870/182df1da-d373-4e08-a3d0-17261936b511)\r\n"
- All the entries of the X13 and TramoSeats dictionaries should be available through
  the 'Explorable' interface
- "Is there a way to move the Main results curve windows above each other (as indicated
  by the diagram):\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/0422b483-6238-4090-98e7-84d5d84e18bc)\r\n\r\nHere's
  a preview of what it might look like:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/58e7d77d-a738-4d91-844a-a74a3f90f67f)\r\n"
- "Current implementation of URI formatting in `DataSource` and `DataSet` encodes
  space characters as `+` instead of `%20`.\r\nThis comes from backward compatibility
  in Java [`URLEncoder`](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/net/URLEncoder.html).\r\n\r\nMore
  info: \r\n- https://www.baeldung.com/java-urlencoder-translate-space-characters\r\n-
  https://guava.dev/releases/23.0/api/docs/com/google/common/net/UrlEscapers.html\r\n-
  https://stackoverflow.com/questions/2678551/when-should-space-be-encoded-to-plus-or-20\r\n-
  https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/util/UriBuilder.html\r\n-
  https://hc.apache.org/httpcomponents-core-5.2.x/current/httpcore5/apidocs/org/apache/hc/core5/net/URIBuilder.html"
- "Some actions are enabled if something is selected in the component.\r\nIt would
  be simplier for the users to consider that everything is selected when nothing is.
  (see copy for example)\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/8778378/f7bb213a-4ddd-4517-8448-24bb0f61de9d)\r\n![image](https://github.com/jdemetra/jdplus-main/assets/8778378/dff4d7d6-d1a2-45f5-a866-1fd0e7d3720a)\r\n"
- JD+ v2 is able to export a chart to SVG but v3 is not.
- "Consider creating a new document via **Statistical Methods** --> **Seasonal Adjustment**
  --> **Single Analysis** --> **X13** (for example, 'X13-Doc1'), and then dropping
  some data into the document.\r\n\r\nWhen I then right-click on the document and
  select **Copy spec. to workspace**, it will appear in the Workspace panel as 'X13-Doc2'
  as expected. However, double-clicking on 'X13-Doc2' or right-clicking on it and
  selecting 'Open' either results in nothing, or an empty document panel. The error
  received is reported further below.\r\n\r\nIf I then attempt to delete the document
  by right-clicking on it and selecting 'Delete', nothing happens. (Renaming it seems
  to work. However, JDemetra+ then fails to shutdown when I click on the close button
  or **File** --> **Exit**.)\r\n\r\n```\r\njava.lang.NullPointerException: Cannot
  invoke \"jdplus.toolkit.desktop.plugin.ui.processing.TsProcessingViewer.getDocument()\"
  because \"this.panel\" is null\r\n\tat jdplus.toolkit.desktop.plugin.workspace.ui.WorkspaceTsTopComponent.componentClosed(WorkspaceTsTopComponent.java:106)\r\n[catch]
  at org.openide.windows.WindowManager.componentCloseNotify(WindowManager.java:297)\r\n\tat
  org.netbeans.core.windows.WindowManagerImpl.notifyTopComponentClosed(WindowManagerImpl.java:1199)\r\n\tat
  org.netbeans.core.windows.Central.removeModeTopComponent(Central.java:1000)\r\n\tat
  org.netbeans.core.windows.Central.userClosedTopComponent(Central.java:2012)\r\n\tat
  org.netbeans.core.windows.view.DefaultView.userClosedTopComponent(DefaultView.java:771)\r\n\tat
  org.netbeans.core.windows.view.ui.TabbedHandler.actionPerformed(TabbedHandler.java:320)\r\n\tat
  org.netbeans.swing.tabcontrol.TabbedContainer.postActionEvent(TabbedContainer.java:711)\r\n\tat
  org.netbeans.swing.tabcontrol.TabbedContainerUI.shouldPerformAction(TabbedContainerUI.java:135)\r\n\tat
  org.netbeans.swing.tabcontrol.plaf.DefaultTabbedContainerUI.access$2700(DefaultTabbedContainerUI.java:87)\r\n\tat
  org.netbeans.swing.tabcontrol.plaf.DefaultTabbedContainerUI$DisplayerActionListener.actionPerformed(DefaultTabbedContainerUI.java:1263)\r\n\tat
  org.netbeans.swing.tabcontrol.TabDisplayer.postActionEvent(TabDisplayer.java:589)\r\n\tat
  org.netbeans.swing.tabcontrol.TabDisplayerUI.shouldPerformAction(TabDisplayerUI.java:168)\r\n\tat
  org.netbeans.swing.tabcontrol.plaf.BasicTabDisplayerUI.access$1700(BasicTabDisplayerUI.java:96)\r\n\tat
  org.netbeans.swing.tabcontrol.plaf.BasicTabDisplayerUI$BasicDisplayerMouseListener.performCommand(BasicTabDisplayerUI.java:761)\r\n\tat
  org.netbeans.swing.tabcontrol.plaf.BasicTabDisplayerUI$BasicDisplayerMouseListener.potentialCommand(BasicTabDisplayerUI.java:746)\r\n\tat
  org.netbeans.swing.tabcontrol.plaf.BasicTabDisplayerUI$BasicDisplayerMouseListener.mouseReleased(BasicTabDisplayerUI.java:795)\r\n\tat
  java.desktop/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)\r\n\tat
  java.desktop/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)\r\n\tat
  java.desktop/java.awt.Component.processMouseEvent(Unknown Source)\r\n\tat java.desktop/javax.swing.JComponent.processMouseEvent(Unknown
  Source)\r\n\tat java.desktop/java.awt.Component.processEvent(Unknown Source)\r\n\tat
  java.desktop/java.awt.Container.processEvent(Unknown Source)\r\n\tat java.desktop/java.awt.Component.dispatchEventImpl(Unknown
  Source)\r\n\tat java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)\r\n\tat
  java.desktop/java.awt.Component.dispatchEvent(Unknown Source)\r\n\tat java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown
  Source)\r\n\tat java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown
  Source)\r\n\tat java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown
  Source)\r\n\tat java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)\r\n\tat
  java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)\r\n\tat java.desktop/java.awt.Component.dispatchEvent(Unknown
  Source)\r\n\tat java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)\r\n\tat
  java.desktop/java.awt.EventQueue$4.run(Unknown Source)\r\n\tat java.desktop/java.awt.EventQueue$4.run(Unknown
  Source)\r\n\tat java.base/java.security.AccessController.doPrivileged(Unknown Source)\r\n\tat
  java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source)\r\n\tat java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source)\r\n\tat java.desktop/java.awt.EventQueue$5.run(Unknown Source)\r\n\tat java.desktop/java.awt.EventQueue$5.run(Unknown
  Source)\r\n\tat java.base/java.security.AccessController.doPrivileged(Unknown Source)\r\n\tat
  java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source)\r\n\tat java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)\r\n\tat
  org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)\r\n\tat java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown
  Source)\r\n\tat java.desktop/java.awt.EventDispatchThread.run(Unknown Source)\r\n```"
- "The latest release provides platform-specific package for windows only.\r\nWe should
  add other mainstream platforms such as:\r\n\r\n| `PLATFORM`  | Intel            |
  Arm              |\r\n|:-----------:|------------------|------------------|\r\n|
  \ **MacOS**  | `osx-x86_64`     | `osx-aarch_64`   |\r\n|  **Linux**  | `linux-x86_64`
  \  | `linux-aarch_64` |\r\n| **Windows** | `windows-x86_64` |                  |\r\n\r\nThis
  would concern both jdemetra and jwsacruncher.\r\n\r\nI bit of renaming is also needed
  for clarification:\r\n- `APP-VERSION-bin.zip` would be renamed `APP-VERSION.zip`\r\n-
  `APP-VERSION-PLATFORM-bin.zip` would be renamed `APP-standalone-VERSION-PLATFORM.zip`\r\n"
- "When I run jwsacruncher via rjwsacruncher, the demetra_m.csv file that it produces
  has mis-aligned column titles, see attached file. \r\n[demetra_m.csv](https://github.com/jdemetra/jdplus-main/files/14340175/demetra_m.csv)\r\n\r\n"
- It would be nice to be able to link to online help documentation for JDemetra+ via
  the Help menu.
- "When I right-click on a chart and attempt to export the image to the clipboard...\r\n\r\n![clipboard](https://github.com/jdemetra/jdplus-main/assets/110582146/a834d70b-b868-473e-a6dd-1d5034be7876)\r\n\r\n...an
  error occurs:\r\n\r\n![error1_screenshot](https://github.com/jdemetra/jdplus-main/assets/110582146/e3f2e14c-fa87-45c4-bd73-7f9cf05031f7)\r\n\r\nThe
  details of the error are below:\r\n\r\njava.lang.NullPointerException: Cannot invoke
  \"java.util.Calendar.clone()\" because \"this.calendar\" is null\r\n\tat java.base/java.text.DateFormat.clone(Unknown
  Source)\r\n\tat org.jfree.chart.axis.DateAxis.clone(DateAxis.java:1980)\r\n\tat
  org.jfree.util.ObjectUtilities.clone(ObjectUtilities.java:170)\r\n\tat org.jfree.chart.util.CloneUtils.cloneMapValues(CloneUtils.java:98)\r\n\tat
  org.jfree.chart.plot.XYPlot.clone(XYPlot.java:5538)\r\n\tat org.jfree.chart.plot.CombinedDomainXYPlot.clone(CombinedDomainXYPlot.java:776)\r\n\tat
  org.jfree.chart.JFreeChart.clone(JFreeChart.java:1721)\r\n\tat org.jfree.chart.ChartTransferable.<init>(ChartTransferable.java:155)\r\n\tat
  ec.util.chart.swing.Charts$ChartTransferable2.<init>(Charts.java:612)\r\n\tat ec.util.chart.swing.Charts.copyChart(Charts.java:429)\r\n\tat
  ec.util.chart.swing.JTimeSeriesChart.copyImage(JTimeSeriesChart.java:407)\r\n\tat
  ec.util.chart.TimeSeriesChartCommand$5.execute(TimeSeriesChartCommand.java:351)\r\n\tat
  ec.util.chart.swing.JTimeSeriesChartCommand$Adapter.execute(JTimeSeriesChartCommand.java:305)\r\n\tat
  ec.util.chart.swing.JTimeSeriesChartCommand$Adapter.execute(JTimeSeriesChartCommand.java:295)\r\n[catch]
  at ec.util.various.swing.JCommand.executeSafely(JCommand.java:76)\r\n\tat ec.util.various.swing.JCommand$ActionAdapter.actionPerformed(JCommand.java:134)\r\n\tat
  java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)\r\n\tat
  java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)\r\n\tat
  java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)\r\n\tat
  java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)\r\n\tat java.desktop/javax.swing.AbstractButton.doClick(Unknown
  Source)\r\n\tat java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown
  Source)\r\n\tat java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown
  Source)\r\n\tat java.desktop/java.awt.Component.processMouseEvent(Unknown Source)\r\n\tat
  java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)\r\n\tat java.desktop/java.awt.Component.processEvent(Unknown
  Source)\r\n\tat java.desktop/java.awt.Container.processEvent(Unknown Source)\r\n\tat
  java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)\r\n\tat java.desktop/java.awt.Container.dispatchEventImpl(Unknown
  Source)\r\n\tat java.desktop/java.awt.Component.dispatchEvent(Unknown Source)\r\n\tat
  java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)\r\n\tat
  java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)\r\n\tat
  java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)\r\n\tat
  java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)\r\n\tat java.desktop/java.awt.Window.dispatchEventImpl(Unknown
  Source)\r\n\tat java.desktop/java.awt.Component.dispatchEvent(Unknown Source)\r\n\tat
  java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)\r\n\tat java.desktop/java.awt.EventQueue$4.run(Unknown
  Source)\r\n\tat java.desktop/java.awt.EventQueue$4.run(Unknown Source)\r\n\tat java.base/java.security.AccessController.doPrivileged(Unknown
  Source)\r\n\tat java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source)\r\n\tat java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source)\r\n\tat java.desktop/java.awt.EventQueue$5.run(Unknown Source)\r\n\tat java.desktop/java.awt.EventQueue$5.run(Unknown
  Source)\r\n\tat java.base/java.security.AccessController.doPrivileged(Unknown Source)\r\n\tat
  java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown
  Source)\r\n\tat java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)\r\n\tat
  org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)\r\n\tat
  java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)\r\n\tat java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown
  Source)\r\n\tat java.desktop/java.awt.EventDispatchThread.run(Unknown Source)"
- "When I right-click on a chart and select 'Configure...' from the context menu,
  nothing seems to happen:\r\n\r\n![screenshot](https://github.com/jdemetra/jdplus-main/assets/110582146/7984b7f6-a2be-4725-b28d-1e53949217df)"
- In the summary table of the interface, the seasonality test is written as "Kruskall-Wallis"
  but it should be "Kruskal-Wallis".
- "![2024-01-16_10-15-44](https://github.com/jdemetra/jdplus-main/assets/95612140/a97eb6cf-a1d0-4ac3-bf7e-2c6a8f190cc4)\r\n"
- "Why the final seasonal filter is not included in `X11ResultsProto` ?\r\nhttps://github.com/jdemetra/jdplus-main/blob/develop/jdplus-main-base/jdplus-x13-base-parent/jdplus-x13-base-protobuf/src/main/java/jdplus/x13/base/protobuf/X11ResultsProto.java#L70\r\nIt
  would solve https://github.com/rjdemetra/rjd3x13/issues/4."
- "When I open the WS in V3 it gives no results, when I click into the specification
  to change the coefficients of the calendar variables and click Done without changing
  anything it works. \r\n[WS2.zip](https://github.com/jdemetra/jdplus-main/files/13742357/WS2.zip)
  \r\n\r\nThe WS is just a simplification of the one with gives no results with the
  cruncher of VS3.\r\nPerhaps this solves also the problem with the timeseries that
  gives no results in the cruncher with version 3. "
- "The following options are not available under Content in Output:\r\n- benchmarking.original\r\n-
  benchmarking.target\r\n- benchmarking.result\r\n- \r\n![bench_ss](https://github.com/jdemetra/jdplus-main/assets/49712324/66203bb6-04a7-4378-9f6e-962327e2b232)\r\n\r\n"
- "The current import/export from/to CSV files has the following problems:\r\n- The
  UI is inconsistent and confusing.\r\n- The code is redundant and all over the place."
- "The current Java version used by JD+ is Java 17.\r\nA new Java LTS has been released
  and brings significant improvements in performance, language and libraries.\r\n\r\nSee
  https://nipafx.dev/road-to-21-upgrade/"
- "The [time interval specification in ISO 8601](https://en.wikipedia.org/wiki/ISO_8601#Time_intervals)
  allows to use a compact notation.\r\nThis compact notation improves the reading
  and writing in some use cases.\r\n\r\nExample: `2010-01-01T00:00:00/P1M` can be
  simplified to `2010-01/P1M`\r\n\r\nAlready partially done in another project: https://github.com/nbbrd/sdmx-dl/commit/6d9a204e844b1aacaa0d7c9e22bd8965551bf399"
- I think it would be good if the default date format of JDemetra+ outputs were the
  same as the default import format (yyyy-MM-dd).
- It could be good to be able to change the decimal separator for the imported txt
  files. Depending on your system (if the decimal separator is the comma), you cannot
  for example import a csv exported by JDemetra+.
- The `Decomposition (X11) > Final filters` panel only shows the trend filter and
  not the seasonal filter. Is this intentional?
- When I right-click on a series, then Split into yearly components, the plot is not
  rendered. Is this option disabled?
- "Since the `arima.getParametersCount()` do not consider if the intercept is included
  i was wondering if the hyperParametersCount() should be increased by 1 when `mean
  = true` ?\r\nhttps://github.com/jdemetra/jdplus-main/blob/7aeb4a7fa15225af4f1371fe48fde49faf28ce7a/jdplus-main-base/jdplus-toolkit-base-parent/jdplus-toolkit-base-core/src/main/java/jdplus/toolkit/base/core/regsarima/ami/SarimaTradingDaysTest.java#L52\r\n"
- "[JDemetra+ v 3.0.2]\r\n\r\nEven after removing the star, my favorites files doesn't
  disappear at the restart of a new session of JDemetra+.\r\n\r\nAlso I have an error
  at the opening of JDemetra+ with a no entry sign. I don't know if it's related.\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/66a27da8-65a3-4edf-ab81-e31b561cd2f4)"
- "Depending on the format of the data, the raw data path is not written with the
  same pattern in the XML files of the SAProcessing. \r\n\r\nFor example, with XLS
  files, the path looks like this: \r\n```\r\n\"...data_ipi.xls#seriesName=RF0610&amp;sheetName=Feuil1\"\"\r\n```\r\nThe
  path to access the series is defined according to the **column name** of the series
  and not its placement so we can invert columns in the excel raw data file and there
  won't be any consequence for our workspace when refreshing.\r\n\r\nFor CSV files,
  the path looks like this: \r\n```\r\n\"...data_ipi.csv#seriesIndex=4\"\r\n```\r\nSo
  here the path to access the series depends only on its position in the file (its
  index) and not on its column name. So we can delete or change the column names,
  it won't change the data of the workspace during the refreshing.\r\n\r\nI don't
  know which property is better than the other when working with raw data files but
  why these different data files are recorded differently ? Is it possible to unify
  the rules for writing file paths or maybe it's totally useless ?\r\n"
- "In version 2 with the package **RJDemetra**, there are 2 functions `load_spec`
  and `save_spec` to save and use again a specification. But the saving and re-loading
  process are using a `.RData` format which is not very convenient to work with JDemetra+.\r\n\r\nIn
  the GUI, it already exists **Import** and **Export** methods which are using the
  `.cfgx` format.\r\n\r\nSo I found this piece of code in jdplus-main:\r\n\r\nhttps://github.com/jdemetra/jdplus-main/blob/1a19d8b2d7d91110873773f30168eacc8fdb88e1/jdplus-main-desktop/jdplus-toolkit-desktop-plugin/src/main/java/jdplus/toolkit/desktop/plugin/core/interchange/FileBroker.java#L52-L58\r\n\r\nBut
  I don't know how to use it with spec objects (with `.jcall` in R for example)...\r\n\r\nThank
  you!"
- "Why the methods used to set informations on a **SaItem** are named `with...` and
  not `set...` ?\r\nMaybe it's a naming convention or just an arbitrary choice ?\r\n\r\nHere
  the method `withSpecification`:\r\n\r\nhttps://github.com/jdemetra/jdplus-main/blob/1a19d8b2d7d91110873773f30168eacc8fdb88e1/jdplus-main-base/jdplus-sa-base-parent/jdplus-sa-base-api/src/main/java/jdplus/sa/base/api/SaItem.java#L123"
- "Sometimes in the Java code, new objects are created with `new` and other with the
  `.builder`.\r\nFor example, below the **SaItems** `items` is build with `.builder`
  whereas the **WorkspaceItemDescriptor** `cur` and the **Map<String, String>** `meta`
  are constructed with new:\r\n\r\nhttps://github.com/jdemetra/jdplus-main/blob/1a19d8b2d7d91110873773f30168eacc8fdb88e1/jdplus-main-base/jdplus-sa-base-parent/jdplus-sa-base-workspace/src/main/java/jdplus/sa/base/workspace/Ws.java#L119-L132\r\n\r\nIs
  there a difference in the use of this 2 constructors ?"
- "Hi,\r\nwe are running the following specification:\r\nSpecification\r\n\r\nSeries\r\nSerie
  span: ALL\r\nPreliminary Check: Yes\r\n\r\nEstimate\r\nModel span: ALL\r\nTolerance:
  1e-07\r\nExact ML: No\r\nUnit root limit: 0.96\r\n\r\nTransformation\r\nFunction:
  LEVEL\r\nAIC difference: \r\nAdjust: NONE\r\n\r\nRegression\r\nCalendar regressor:
  TD7\r\nwith Leap Year: No\r\nAutoAdjust: FALSE\r\nTest: TEST_NO\r\n\r\nEaster: INCLUDEEASTER\r\n\r\nPre-specified
  outliers: 8\r\n\t- LS (2008-10-01) \r\n\t- LS (2009-01-01) \r\n\t- AO (2020-01-01)
  \r\n\t- AO (2020-04-01) \r\n\t- AO (2020-07-01) \r\n\t- AO (2020-10-01) \r\n\t-
  AO (2021-01-01) \r\n\t- AO (2021-04-01) \r\nRamps: No\r\nUser-defined variables:
  No\r\n\r\nOutliers\r\nIs enabled: No\r\n\r\nARIMA\r\nSARIMA model:  (3,1,2) (1,0,1)\r\n\r\nCoefficients\r\n
  \            Estimate      Type\r\nphi(1)     1.51126240 ESTIMATED\r\nphi(2)     0.21905144
  ESTIMATED\r\nphi(3)    -0.29221664 ESTIMATED\r\ntheta(1)   1.66167495 ESTIMATED\r\ntheta(2)
  \  0.66200604 ESTIMATED\r\nbphi(1)   -0.97216183 ESTIMATED\r\nbtheta(1)  0.04464834
  ESTIMATED\r\n\r\nSpecification SEATS\r\nApproximation mode: APP_LEGACY\r\nMA unit
  root boundary: 0.95\r\nTrend boundary: 0.5\r\nSeasonal tolerance: 2\r\nSeasonal
  boundary: 0.8\r\nMethod: ALG_BURMAN\r\n\r\nBenchmarking\r\nIs enabled: No\r\n\r\nand
  the results seems to have a numerical problem as you can see in the image attached.\r\nThanks
  \ in advance\r\n![CorrelationEstimates](https://github.com/jdemetra/jdplus-main/assets/17139327/62794c6f-31f8-4771-bd61-b5b23c09a617)\r\n\r\n\r\n"
- It seems that when Calendarsigma is set to "Select", the sigma vector cannot be
  changed (we can see the message `[Ljdplus.x13.base.ap...` but we cannot click) and
  then we cannot anymore change the calendar sigma option (message "Sigmavec mustn't
  be used without CalendarSigmaOption Select").
- "It seems that it is a problem  with our decimal separator \",\" and the csv separator.
  \ Is it just a problem of the test or also for the use of JD+, e.g. exchange of
  files.\r\n\r\nRunning jdplus.sa.base.csv.CsvInformationFormatterTest\r\nTests run:
  9, Failures: 6, Errors: 0, Skipped: 0, Time elapsed: 0.116 s <<< FAILURE! - in jdplus.sa.base.csv.CsvInformationFormatterTest\r\njdplus.sa.base.csv.CsvInformationFormatterTest.testFormatResultsMissing
  \ Time elapsed: 0.01 s  <<< FAILURE!\r\norg.opentest4j.AssertionFailedError: \r\n\r\nExpecting
  actual:\r\n  \";complex;string\r\nline1;;hello\r\nline2;fixme:2x1;\r\n\"\r\nto be
  equal to:\r\n  \",complex,string\r\nline1,,hello\r\nline2,fixme:2x1,\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native
  Method)\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\tat
  java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)\r\n\tat
  jdplus.sa.base.csv.CsvInformationFormatterTest.testFormatResultsMissing(CsvInformationFormatterTest.java:191)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat
  java.base/java.lang.reflect.Method.invoke(Method.java:568)\r\n\tat org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)\r\n\tat
  org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:217)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:213)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:138)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:68)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:147)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:127)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:90)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:55)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:102)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:54)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)\r\n\tat
  org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:50)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:122)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)\r\n\r\njdplus.sa.base.csv.CsvInformationFormatterTest.testFormatResultsFull
  \ Time elapsed: 0.001 s  <<< FAILURE!\r\norg.opentest4j.AssertionFailedError: \r\n\r\nExpecting
  actual:\r\n  \";complex;string\r\nline1;fixme:1x1;hello\r\nline2;fixme:2x1;world\r\n\"\r\nto
  be equal to:\r\n  \",complex,string\r\nline1,fixme:1x1,hello\r\nline2,fixme:2x1,world\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native
  Method)\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\tat
  java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)\r\n\tat
  jdplus.sa.base.csv.CsvInformationFormatterTest.testFormatResultsFull(CsvInformationFormatterTest.java:156)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat
  java.base/java.lang.reflect.Method.invoke(Method.java:568)\r\n\tat org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)\r\n\tat
  org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:217)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:213)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:138)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:68)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:147)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:127)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:90)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:55)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:102)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:54)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)\r\n\tat
  org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:50)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:122)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)\r\n\r\njdplus.sa.base.csv.CsvInformationFormatterTest.testFormatFull
  \ Time elapsed: 0.004 s  <<< FAILURE!\r\norg.opentest4j.AssertionFailedError: \r\n\r\nExpecting
  actual:\r\n  \"complex;;string\r\n1,4142;8;hello\r\n2,2361;13,5516;world\r\n\"\r\nto
  be equal to:\r\n  \"complex,,string\r\n1.4142,8,hello\r\n2.2361,13.5516,world\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native
  Method)\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\tat
  java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)\r\n\tat
  jdplus.sa.base.csv.CsvInformationFormatterTest.testFormatFull(CsvInformationFormatterTest.java:56)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat
  java.base/java.lang.reflect.Method.invoke(Method.java:568)\r\n\tat org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)\r\n\tat
  org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:217)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:213)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:138)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:68)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:147)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:127)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:90)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:55)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:102)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:54)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)\r\n\tat
  org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:50)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:122)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)\r\n\r\njdplus.sa.base.csv.CsvInformationFormatterTest.testFormatMissing
  \ Time elapsed: 0.001 s  <<< FAILURE!\r\norg.opentest4j.AssertionFailedError: \r\n\r\nExpecting
  actual:\r\n  \"complex;;string\r\n;;hello\r\n2,2361;13,5516;\r\n\"\r\nto be equal
  to:\r\n  \"complex,,string\r\n,,hello\r\n2.2361,13.5516,\r\n\"\r\nwhen ignoring
  newlines (\\n, \\r\\n).\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native
  Method)\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\tat
  java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)\r\n\tat
  jdplus.sa.base.csv.CsvInformationFormatterTest.testFormatMissing(CsvInformationFormatterTest.java:81)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat
  java.base/java.lang.reflect.Method.invoke(Method.java:568)\r\n\tat org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)\r\n\tat
  org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:217)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:213)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:138)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:68)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:147)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:127)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:90)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:55)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:102)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:54)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)\r\n\tat
  org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:50)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:122)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)\r\n\r\njdplus.sa.base.csv.CsvInformationFormatterTest.testFormatWildCards
  \ Time elapsed: 0.002 s  <<< FAILURE!\r\norg.opentest4j.AssertionFailedError: \r\n\r\nExpecting
  actual:\r\n  \"complex;string;boolean;string\r\nfixme:1x1;hello;fixme:1x3;hello\r\nfixme:2x1;world;fixme:2x3;world\r\n\"\r\nto
  be equal to:\r\n  \"complex,string,boolean,string\r\nfixme:1x1,hello,fixme:1x3,hello\r\nfixme:2x1,world,fixme:2x3,world\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native
  Method)\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\tat
  java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)\r\n\tat
  jdplus.sa.base.csv.CsvInformationFormatterTest.testFormatWildCards(CsvInformationFormatterTest.java:106)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat
  java.base/java.lang.reflect.Method.invoke(Method.java:568)\r\n\tat org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)\r\n\tat
  org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:217)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:213)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:138)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:68)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:147)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:127)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:90)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:55)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:102)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:54)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)\r\n\tat
  org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:50)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:122)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)\r\n\r\njdplus.sa.base.csv.CsvInformationFormatterTest.testFormatResultsWildCards
  \ Time elapsed: 0.001 s  <<< FAILURE!\r\norg.opentest4j.AssertionFailedError: \r\n\r\nExpecting
  actual:\r\n  \";complex;string;boolean;string\r\nline1;fixme:1x1;hello;fixme:1x3;hello\r\nline2;fixme:2x1;world;fixme:2x3;world\r\n\"\r\nto
  be equal to:\r\n  \",complex,string,boolean,string\r\nline1,fixme:1x1,hello,fixme:1x3,hello\r\nline2,fixme:2x1,world,fixme:2x3,world\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native
  Method)\r\n\tat java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\tat
  java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)\r\n\tat
  jdplus.sa.base.csv.CsvInformationFormatterTest.testFormatResultsWildCards(CsvInformationFormatterTest.java:226)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat
  java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\r\n\tat
  java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat
  java.base/java.lang.reflect.Method.invoke(Method.java:568)\r\n\tat org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)\r\n\tat
  org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)\r\n\tat
  org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)\r\n\tat
  org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92)\r\n\tat
  org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:217)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:213)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:138)\r\n\tat
  org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:68)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\r\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\r\n\tat
  org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\r\n\tat
  org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\r\n\tat
  org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\r\n\tat
  org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)\r\n\tat
  org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:147)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:127)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:90)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:55)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:102)\r\n\tat
  org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:54)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)\r\n\tat
  org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)\r\n\tat
  org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:50)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148)\r\n\tat
  org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:122)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)\r\n\tat
  org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)\r\n\r\n\r\nResults:\r\n\r\nFailures:
  \r\n  CsvInformationFormatterTest.testFormatFull:56 \r\nExpecting actual:\r\n  \"complex;;string\r\n1,4142;8;hello\r\n2,2361;13,5516;world\r\n\"\r\nto
  be equal to:\r\n  \"complex,,string\r\n1.4142,8,hello\r\n2.2361,13.5516,world\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n  CsvInformationFormatterTest.testFormatMissing:81
  \r\nExpecting actual:\r\n  \"complex;;string\r\n;;hello\r\n2,2361;13,5516;\r\n\"\r\nto
  be equal to:\r\n  \"complex,,string\r\n,,hello\r\n2.2361,13.5516,\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n  CsvInformationFormatterTest.testFormatResultsFull:156
  \r\nExpecting actual:\r\n  \";complex;string\r\nline1;fixme:1x1;hello\r\nline2;fixme:2x1;world\r\n\"\r\nto
  be equal to:\r\n  \",complex,string\r\nline1,fixme:1x1,hello\r\nline2,fixme:2x1,world\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n  CsvInformationFormatterTest.testFormatResultsMissing:191
  \r\nExpecting actual:\r\n  \";complex;string\r\nline1;;hello\r\nline2;fixme:2x1;\r\n\"\r\nto
  be equal to:\r\n  \",complex,string\r\nline1,,hello\r\nline2,fixme:2x1,\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n  CsvInformationFormatterTest.testFormatResultsWildCards:226
  \r\nExpecting actual:\r\n  \";complex;string;boolean;string\r\nline1;fixme:1x1;hello;fixme:1x3;hello\r\nline2;fixme:2x1;world;fixme:2x3;world\r\n\"\r\nto
  be equal to:\r\n  \",complex,string,boolean,string\r\nline1,fixme:1x1,hello,fixme:1x3,hello\r\nline2,fixme:2x1,world,fixme:2x3,world\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n  CsvInformationFormatterTest.testFormatWildCards:106
  \r\nExpecting actual:\r\n  \"complex;string;boolean;string\r\nfixme:1x1;hello;fixme:1x3;hello\r\nfixme:2x1;world;fixme:2x3;world\r\n\"\r\nto
  be equal to:\r\n  \"complex,string,boolean,string\r\nfixme:1x1,hello,fixme:1x3,hello\r\nfixme:2x1,world,fixme:2x3,world\r\n\"\r\nwhen
  ignoring newlines (\\n, \\r\\n).\r\n\r\n"
state:
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
- closed
url:
- https://api.github.com/repos/jdemetra/jdplus-main/issues/1028
- https://api.github.com/repos/jdemetra/jdplus-main/issues/1002
- https://api.github.com/repos/jdemetra/jdplus-main/issues/989
- https://api.github.com/repos/jdemetra/jdplus-main/issues/984
- https://api.github.com/repos/jdemetra/jdplus-main/issues/963
- https://api.github.com/repos/jdemetra/jdplus-main/issues/958
- https://api.github.com/repos/jdemetra/jdplus-main/issues/929
- https://api.github.com/repos/jdemetra/jdplus-main/issues/924
- https://api.github.com/repos/jdemetra/jdplus-main/issues/916
- https://api.github.com/repos/jdemetra/jdplus-main/issues/911
- https://api.github.com/repos/jdemetra/jdplus-main/issues/897
- https://api.github.com/repos/jdemetra/jdplus-main/issues/896
- https://api.github.com/repos/jdemetra/jdplus-main/issues/895
- https://api.github.com/repos/jdemetra/jdplus-main/issues/894
- https://api.github.com/repos/jdemetra/jdplus-main/issues/882
- https://api.github.com/repos/jdemetra/jdplus-main/issues/880
- https://api.github.com/repos/jdemetra/jdplus-main/issues/874
- https://api.github.com/repos/jdemetra/jdplus-main/issues/873
- https://api.github.com/repos/jdemetra/jdplus-main/issues/854
- https://api.github.com/repos/jdemetra/jdplus-main/issues/844
- https://api.github.com/repos/jdemetra/jdplus-main/issues/840
- https://api.github.com/repos/jdemetra/jdplus-main/issues/836
- https://api.github.com/repos/jdemetra/jdplus-main/issues/827
- https://api.github.com/repos/jdemetra/jdplus-main/issues/825
- https://api.github.com/repos/jdemetra/jdplus-main/issues/820
- https://api.github.com/repos/jdemetra/jdplus-main/issues/806
- https://api.github.com/repos/jdemetra/jdplus-main/issues/802
- https://api.github.com/repos/jdemetra/jdplus-main/issues/776
- https://api.github.com/repos/jdemetra/jdplus-main/issues/775
- https://api.github.com/repos/jdemetra/jdplus-main/issues/771
- https://api.github.com/repos/jdemetra/jdplus-main/issues/770
- https://api.github.com/repos/jdemetra/jdplus-main/issues/764
- https://api.github.com/repos/jdemetra/jdplus-main/issues/761
- https://api.github.com/repos/jdemetra/jdplus-main/issues/756
- https://api.github.com/repos/jdemetra/jdplus-main/issues/754
- https://api.github.com/repos/jdemetra/jdplus-main/issues/711
- https://api.github.com/repos/jdemetra/jdplus-main/issues/689
- https://api.github.com/repos/jdemetra/jdplus-main/issues/688
- https://api.github.com/repos/jdemetra/jdplus-main/issues/667
- https://api.github.com/repos/jdemetra/jdplus-main/issues/661
- https://api.github.com/repos/jdemetra/jdplus-main/issues/659
- https://api.github.com/repos/jdemetra/jdplus-main/issues/658
- https://api.github.com/repos/jdemetra/jdplus-main/issues/654
- https://api.github.com/repos/jdemetra/jdplus-main/issues/641
- https://api.github.com/repos/jdemetra/jdplus-main/issues/639
- https://api.github.com/repos/jdemetra/jdplus-main/issues/638
- https://api.github.com/repos/jdemetra/jdplus-main/issues/637
- https://api.github.com/repos/jdemetra/jdplus-main/issues/632
- https://api.github.com/repos/jdemetra/jdplus-main/issues/625
- https://api.github.com/repos/jdemetra/jdplus-main/issues/624
- https://api.github.com/repos/jdemetra/jdplus-main/issues/617
- https://api.github.com/repos/jdemetra/jdplus-main/issues/612
- https://api.github.com/repos/jdemetra/jdplus-main/issues/611
- https://api.github.com/repos/jdemetra/jdplus-main/issues/610
- https://api.github.com/repos/jdemetra/jdplus-main/issues/609
- https://api.github.com/repos/jdemetra/jdplus-main/issues/607
- https://api.github.com/repos/jdemetra/jdplus-main/issues/604
- https://api.github.com/repos/jdemetra/jdplus-main/issues/602
- https://api.github.com/repos/jdemetra/jdplus-main/issues/601
- https://api.github.com/repos/jdemetra/jdplus-main/issues/597
- https://api.github.com/repos/jdemetra/jdplus-main/issues/592
- https://api.github.com/repos/jdemetra/jdplus-main/issues/586
- https://api.github.com/repos/jdemetra/jdplus-main/issues/585
- https://api.github.com/repos/jdemetra/jdplus-main/issues/584
- https://api.github.com/repos/jdemetra/jdplus-main/issues/570
- https://api.github.com/repos/jdemetra/jdplus-main/issues/567
- https://api.github.com/repos/jdemetra/jdplus-main/issues/565
- https://api.github.com/repos/jdemetra/jdplus-main/issues/561
- https://api.github.com/repos/jdemetra/jdplus-main/issues/556
- https://api.github.com/repos/jdemetra/jdplus-main/issues/555
- https://api.github.com/repos/jdemetra/jdplus-main/issues/551
- https://api.github.com/repos/jdemetra/jdplus-main/issues/550
- https://api.github.com/repos/jdemetra/jdplus-main/issues/541
- https://api.github.com/repos/jdemetra/jdplus-main/issues/535
- https://api.github.com/repos/jdemetra/jdplus-main/issues/530
- https://api.github.com/repos/jdemetra/jdplus-main/issues/521
- https://api.github.com/repos/jdemetra/jdplus-main/issues/520
- https://api.github.com/repos/jdemetra/jdplus-main/issues/518
- https://api.github.com/repos/jdemetra/jdplus-main/issues/512
- https://api.github.com/repos/jdemetra/jdplus-main/issues/511
- https://api.github.com/repos/jdemetra/jdplus-main/issues/495
- https://api.github.com/repos/jdemetra/jdplus-main/issues/490
- https://api.github.com/repos/jdemetra/jdplus-main/issues/489
- https://api.github.com/repos/jdemetra/jdplus-main/issues/486
- https://api.github.com/repos/jdemetra/jdplus-main/issues/482
- https://api.github.com/repos/jdemetra/jdplus-main/issues/480
- https://api.github.com/repos/jdemetra/jdplus-main/issues/478
- https://api.github.com/repos/jdemetra/jdplus-main/issues/465
- https://api.github.com/repos/jdemetra/jdplus-main/issues/462
- https://api.github.com/repos/jdemetra/jdplus-main/issues/459
- https://api.github.com/repos/jdemetra/jdplus-main/issues/451
- https://api.github.com/repos/jdemetra/jdplus-main/issues/448
- https://api.github.com/repos/jdemetra/jdplus-main/issues/446
- https://api.github.com/repos/jdemetra/jdplus-main/issues/424
- https://api.github.com/repos/jdemetra/jdplus-main/issues/420
- https://api.github.com/repos/jdemetra/jdplus-main/issues/414
- https://api.github.com/repos/jdemetra/jdplus-main/issues/398
- https://api.github.com/repos/jdemetra/jdplus-main/issues/394
- https://api.github.com/repos/jdemetra/jdplus-main/issues/385
- https://api.github.com/repos/jdemetra/jdplus-main/issues/368
- https://api.github.com/repos/jdemetra/jdplus-main/issues/354
- https://api.github.com/repos/jdemetra/jdplus-main/issues/349
- https://api.github.com/repos/jdemetra/jdplus-main/issues/347
- https://api.github.com/repos/jdemetra/jdplus-main/issues/337
- https://api.github.com/repos/jdemetra/jdplus-main/issues/336
- https://api.github.com/repos/jdemetra/jdplus-main/issues/328
- https://api.github.com/repos/jdemetra/jdplus-main/issues/326
- https://api.github.com/repos/jdemetra/jdplus-main/issues/323
- https://api.github.com/repos/jdemetra/jdplus-main/issues/313
- https://api.github.com/repos/jdemetra/jdplus-main/issues/311
- https://api.github.com/repos/jdemetra/jdplus-main/issues/309
- https://api.github.com/repos/jdemetra/jdplus-main/issues/303
- https://api.github.com/repos/jdemetra/jdplus-main/issues/301
- https://api.github.com/repos/jdemetra/jdplus-main/issues/295
- https://api.github.com/repos/jdemetra/jdplus-main/issues/294
- https://api.github.com/repos/jdemetra/jdplus-main/issues/292
- https://api.github.com/repos/jdemetra/jdplus-main/issues/291
- https://api.github.com/repos/jdemetra/jdplus-main/issues/289
- https://api.github.com/repos/jdemetra/jdplus-main/issues/288
- https://api.github.com/repos/jdemetra/jdplus-main/issues/284
- https://api.github.com/repos/jdemetra/jdplus-main/issues/275
- https://api.github.com/repos/jdemetra/jdplus-main/issues/273
- https://api.github.com/repos/jdemetra/jdplus-main/issues/272
- https://api.github.com/repos/jdemetra/jdplus-main/issues/271
- https://api.github.com/repos/jdemetra/jdplus-main/issues/269
- https://api.github.com/repos/jdemetra/jdplus-main/issues/262
- https://api.github.com/repos/jdemetra/jdplus-main/issues/254
- https://api.github.com/repos/jdemetra/jdplus-main/issues/247
- https://api.github.com/repos/jdemetra/jdplus-main/issues/238
- https://api.github.com/repos/jdemetra/jdplus-main/issues/228
- https://api.github.com/repos/jdemetra/jdplus-main/issues/226
- https://api.github.com/repos/jdemetra/jdplus-main/issues/221
- https://api.github.com/repos/jdemetra/jdplus-main/issues/217
- https://api.github.com/repos/jdemetra/jdplus-main/issues/216
- https://api.github.com/repos/jdemetra/jdplus-main/issues/215
- https://api.github.com/repos/jdemetra/jdplus-main/issues/203
- https://api.github.com/repos/jdemetra/jdplus-main/issues/197
- https://api.github.com/repos/jdemetra/jdplus-main/issues/195
- https://api.github.com/repos/jdemetra/jdplus-main/issues/183
- https://api.github.com/repos/jdemetra/jdplus-main/issues/179
- https://api.github.com/repos/jdemetra/jdplus-main/issues/163
- https://api.github.com/repos/jdemetra/jdplus-main/issues/160
- https://api.github.com/repos/jdemetra/jdplus-main/issues/159
- https://api.github.com/repos/jdemetra/jdplus-main/issues/156
- https://api.github.com/repos/jdemetra/jdplus-main/issues/155
- https://api.github.com/repos/jdemetra/jdplus-main/issues/154
- https://api.github.com/repos/jdemetra/jdplus-main/issues/145
- https://api.github.com/repos/jdemetra/jdplus-main/issues/108
- https://api.github.com/repos/jdemetra/jdplus-main/issues/84
- https://api.github.com/repos/jdemetra/jdplus-main/issues/82
- https://api.github.com/repos/jdemetra/jdplus-main/issues/81
- https://api.github.com/repos/jdemetra/jdplus-main/issues/80
- https://api.github.com/repos/jdemetra/jdplus-main/issues/79
- https://api.github.com/repos/jdemetra/jdplus-main/issues/78
- https://api.github.com/repos/jdemetra/jdplus-main/issues/65
- https://api.github.com/repos/jdemetra/jdplus-main/issues/45
html_url:
- https://github.com/jdemetra/jdplus-main/issues/1028
- https://github.com/jdemetra/jdplus-main/issues/1002
- https://github.com/jdemetra/jdplus-main/issues/989
- https://github.com/jdemetra/jdplus-main/issues/984
- https://github.com/jdemetra/jdplus-main/issues/963
- https://github.com/jdemetra/jdplus-main/issues/958
- https://github.com/jdemetra/jdplus-main/issues/929
- https://github.com/jdemetra/jdplus-main/issues/924
- https://github.com/jdemetra/jdplus-main/issues/916
- https://github.com/jdemetra/jdplus-main/issues/911
- https://github.com/jdemetra/jdplus-main/issues/897
- https://github.com/jdemetra/jdplus-main/issues/896
- https://github.com/jdemetra/jdplus-main/issues/895
- https://github.com/jdemetra/jdplus-main/issues/894
- https://github.com/jdemetra/jdplus-main/issues/882
- https://github.com/jdemetra/jdplus-main/issues/880
- https://github.com/jdemetra/jdplus-main/issues/874
- https://github.com/jdemetra/jdplus-main/issues/873
- https://github.com/jdemetra/jdplus-main/issues/854
- https://github.com/jdemetra/jdplus-main/issues/844
- https://github.com/jdemetra/jdplus-main/issues/840
- https://github.com/jdemetra/jdplus-main/issues/836
- https://github.com/jdemetra/jdplus-main/issues/827
- https://github.com/jdemetra/jdplus-main/issues/825
- https://github.com/jdemetra/jdplus-main/issues/820
- https://github.com/jdemetra/jdplus-main/issues/806
- https://github.com/jdemetra/jdplus-main/issues/802
- https://github.com/jdemetra/jdplus-main/issues/776
- https://github.com/jdemetra/jdplus-main/issues/775
- https://github.com/jdemetra/jdplus-main/issues/771
- https://github.com/jdemetra/jdplus-main/issues/770
- https://github.com/jdemetra/jdplus-main/issues/764
- https://github.com/jdemetra/jdplus-main/issues/761
- https://github.com/jdemetra/jdplus-main/issues/756
- https://github.com/jdemetra/jdplus-main/issues/754
- https://github.com/jdemetra/jdplus-main/issues/711
- https://github.com/jdemetra/jdplus-main/issues/689
- https://github.com/jdemetra/jdplus-main/issues/688
- https://github.com/jdemetra/jdplus-main/issues/667
- https://github.com/jdemetra/jdplus-main/issues/661
- https://github.com/jdemetra/jdplus-main/issues/659
- https://github.com/jdemetra/jdplus-main/issues/658
- https://github.com/jdemetra/jdplus-main/issues/654
- https://github.com/jdemetra/jdplus-main/issues/641
- https://github.com/jdemetra/jdplus-main/issues/639
- https://github.com/jdemetra/jdplus-main/issues/638
- https://github.com/jdemetra/jdplus-main/issues/637
- https://github.com/jdemetra/jdplus-main/issues/632
- https://github.com/jdemetra/jdplus-main/issues/625
- https://github.com/jdemetra/jdplus-main/issues/624
- https://github.com/jdemetra/jdplus-main/issues/617
- https://github.com/jdemetra/jdplus-main/issues/612
- https://github.com/jdemetra/jdplus-main/issues/611
- https://github.com/jdemetra/jdplus-main/issues/610
- https://github.com/jdemetra/jdplus-main/issues/609
- https://github.com/jdemetra/jdplus-main/issues/607
- https://github.com/jdemetra/jdplus-main/issues/604
- https://github.com/jdemetra/jdplus-main/issues/602
- https://github.com/jdemetra/jdplus-main/issues/601
- https://github.com/jdemetra/jdplus-main/issues/597
- https://github.com/jdemetra/jdplus-main/issues/592
- https://github.com/jdemetra/jdplus-main/issues/586
- https://github.com/jdemetra/jdplus-main/issues/585
- https://github.com/jdemetra/jdplus-main/issues/584
- https://github.com/jdemetra/jdplus-main/issues/570
- https://github.com/jdemetra/jdplus-main/issues/567
- https://github.com/jdemetra/jdplus-main/issues/565
- https://github.com/jdemetra/jdplus-main/issues/561
- https://github.com/jdemetra/jdplus-main/issues/556
- https://github.com/jdemetra/jdplus-main/issues/555
- https://github.com/jdemetra/jdplus-main/issues/551
- https://github.com/jdemetra/jdplus-main/issues/550
- https://github.com/jdemetra/jdplus-main/issues/541
- https://github.com/jdemetra/jdplus-main/issues/535
- https://github.com/jdemetra/jdplus-main/issues/530
- https://github.com/jdemetra/jdplus-main/issues/521
- https://github.com/jdemetra/jdplus-main/issues/520
- https://github.com/jdemetra/jdplus-main/issues/518
- https://github.com/jdemetra/jdplus-main/issues/512
- https://github.com/jdemetra/jdplus-main/issues/511
- https://github.com/jdemetra/jdplus-main/issues/495
- https://github.com/jdemetra/jdplus-main/issues/490
- https://github.com/jdemetra/jdplus-main/issues/489
- https://github.com/jdemetra/jdplus-main/issues/486
- https://github.com/jdemetra/jdplus-main/issues/482
- https://github.com/jdemetra/jdplus-main/issues/480
- https://github.com/jdemetra/jdplus-main/issues/478
- https://github.com/jdemetra/jdplus-main/issues/465
- https://github.com/jdemetra/jdplus-main/issues/462
- https://github.com/jdemetra/jdplus-main/issues/459
- https://github.com/jdemetra/jdplus-main/issues/451
- https://github.com/jdemetra/jdplus-main/issues/448
- https://github.com/jdemetra/jdplus-main/issues/446
- https://github.com/jdemetra/jdplus-main/issues/424
- https://github.com/jdemetra/jdplus-main/issues/420
- https://github.com/jdemetra/jdplus-main/issues/414
- https://github.com/jdemetra/jdplus-main/issues/398
- https://github.com/jdemetra/jdplus-main/issues/394
- https://github.com/jdemetra/jdplus-main/issues/385
- https://github.com/jdemetra/jdplus-main/issues/368
- https://github.com/jdemetra/jdplus-main/issues/354
- https://github.com/jdemetra/jdplus-main/issues/349
- https://github.com/jdemetra/jdplus-main/issues/347
- https://github.com/jdemetra/jdplus-main/issues/337
- https://github.com/jdemetra/jdplus-main/issues/336
- https://github.com/jdemetra/jdplus-main/issues/328
- https://github.com/jdemetra/jdplus-main/issues/326
- https://github.com/jdemetra/jdplus-main/issues/323
- https://github.com/jdemetra/jdplus-main/issues/313
- https://github.com/jdemetra/jdplus-main/issues/311
- https://github.com/jdemetra/jdplus-main/issues/309
- https://github.com/jdemetra/jdplus-main/issues/303
- https://github.com/jdemetra/jdplus-main/issues/301
- https://github.com/jdemetra/jdplus-main/issues/295
- https://github.com/jdemetra/jdplus-main/issues/294
- https://github.com/jdemetra/jdplus-main/issues/292
- https://github.com/jdemetra/jdplus-main/issues/291
- https://github.com/jdemetra/jdplus-main/issues/289
- https://github.com/jdemetra/jdplus-main/issues/288
- https://github.com/jdemetra/jdplus-main/issues/284
- https://github.com/jdemetra/jdplus-main/issues/275
- https://github.com/jdemetra/jdplus-main/issues/273
- https://github.com/jdemetra/jdplus-main/issues/272
- https://github.com/jdemetra/jdplus-main/issues/271
- https://github.com/jdemetra/jdplus-main/issues/269
- https://github.com/jdemetra/jdplus-main/issues/262
- https://github.com/jdemetra/jdplus-main/issues/254
- https://github.com/jdemetra/jdplus-main/issues/247
- https://github.com/jdemetra/jdplus-main/issues/238
- https://github.com/jdemetra/jdplus-main/issues/228
- https://github.com/jdemetra/jdplus-main/issues/226
- https://github.com/jdemetra/jdplus-main/issues/221
- https://github.com/jdemetra/jdplus-main/issues/217
- https://github.com/jdemetra/jdplus-main/issues/216
- https://github.com/jdemetra/jdplus-main/issues/215
- https://github.com/jdemetra/jdplus-main/issues/203
- https://github.com/jdemetra/jdplus-main/issues/197
- https://github.com/jdemetra/jdplus-main/issues/195
- https://github.com/jdemetra/jdplus-main/issues/183
- https://github.com/jdemetra/jdplus-main/issues/179
- https://github.com/jdemetra/jdplus-main/issues/163
- https://github.com/jdemetra/jdplus-main/issues/160
- https://github.com/jdemetra/jdplus-main/issues/159
- https://github.com/jdemetra/jdplus-main/issues/156
- https://github.com/jdemetra/jdplus-main/issues/155
- https://github.com/jdemetra/jdplus-main/issues/154
- https://github.com/jdemetra/jdplus-main/issues/145
- https://github.com/jdemetra/jdplus-main/issues/108
- https://github.com/jdemetra/jdplus-main/issues/84
- https://github.com/jdemetra/jdplus-main/issues/82
- https://github.com/jdemetra/jdplus-main/issues/81
- https://github.com/jdemetra/jdplus-main/issues/80
- https://github.com/jdemetra/jdplus-main/issues/79
- https://github.com/jdemetra/jdplus-main/issues/78
- https://github.com/jdemetra/jdplus-main/issues/65
- https://github.com/jdemetra/jdplus-main/issues/45
milestone:
- .na.character
- 3.8.0
- 3.8.0
- 3.8.0
- 3.8.0
- 3.8.0
- .na.character
- .na.character
- 3.7.0
- 3.7.0
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- 3.7.0
- 3.7.0
- .na.character
- 3.7.0
- 3.7.0
- 3.7.0
- .na.character
- 3.7.0
- 3.8.0
- 3.6.0
- 3.6.0
- .na.character
- 3.6.0
- .na.character
- .na.character
- .na.character
- 3.6.0
- 3.6.0
- .na.character
- 3.6.0
- 3.6.0
- 3.6.0
- 3.6.0
- 3.6.0
- 3.6.0
- 3.5.1
- .na.character
- 3.5.1
- 3.5.1
- .na.character
- .na.character
- 3.5.1
- .na.character
- 3.5.1
- 3.8.0
- .na.character
- 3.5.1
- .na.character
- .na.character
- 3.6.0
- .na.character
- 3.5.1
- 3.6.0
- .na.character
- .na.character
- .na.character
- .na.character
- 3.6.0
- 3.5.1
- 3.5.0
- 3.5.0
- 3.5.0
- 3.7.0
- 3.6.0
- 3.5.0
- 3.5.0
- .na.character
- 3.5.0
- 3.5.0
- 3.5.0
- .na.character
- 3.4.0
- .na.character
- 3.4.0
- 3.4.0
- .na.character
- 3.6.0
- .na.character
- .na.character
- .na.character
- .na.character
- 3.4.0
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- 3.6.0
- .na.character
- .na.character
- 3.4.0
- 3.5.0
- 3.2.3
- .na.character
- .na.character
- 3.2.3
- .na.character
- .na.character
- 3.2.3
- 3.2.3
- 3.2.3
- 3.2.3
- 3.2.3
- 3.2.3
- 3.2.3
- .na.character
- .na.character
- .na.character
- 3.2.3
- 3.2.3
- 3.2.3
- .na.character
- .na.character
- .na.character
- .na.character
- 3.6.0
- 3.2.3
- 3.2.3
- 3.2.3
- 3.2.3
- 3.2.2
- 3.2.2
- 3.2.3
- 3.2.2
- 3.2.2
- 3.2.3
- 3.2.2
- 3.2.2
- 3.2.2
- 3.2.2
- .na.character
- 3.2.3
- 3.2.3
- 3.8.0
- 3.7.0
- 3.6.0
- .na.character
- .na.character
- .na.character
- 3.2.2
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
created_at:
- 1782901960.0
- 1780901068.0
- 1780045501.0
- 1779371051.0
- 1777031022.0
- 1776844246.0
- 1774221232.0
- 1773370832.0
- 1772719218.0
- 1772543302.0
- 1771906875.0
- 1771906386.0
- 1771905546.0
- 1771905101.0
- 1770826411.0
- 1770721419.0
- 1769526755.0
- 1769524228.0
- 1767867523.0
- 1765956284.0
- 1765810894.0
- 1765807949.0
- 1764868079.0
- 1764836626.0
- 1764247704.0
- 1763539984.0
- 1763438052.0
- 1761225760.0
- 1761218508.0
- 1761077392.0
- 1761076900.0
- 1761001532.0
- 1760518667.0
- 1760369613.0
- 1760096084.0
- 1755818439.0
- 1752760052.0
- 1752753220.0
- 1750909962.0
- 1750227525.0
- 1749715266.0
- 1749714041.0
- 1748967338.0
- 1748267401.0
- 1748264384.0
- 1748263963.0
- 1748263349.0
- 1747984716.0
- 1747628931.0
- 1747309696.0
- 1746493093.0
- 1745920344.0
- 1745911075.0
- 1745893794.0
- 1745811680.0
- 1745451509.0
- 1745384861.0
- 1745374846.0
- 1745290096.0
- 1744871973.0
- 1744180847.0
- 1743608737.0
- 1743607775.0
- 1743605058.0
- 1743002508.0
- 1742802005.0
- 1742556465.0
- 1742381595.0
- 1741950757.0
- 1741939983.0
- 1741858921.0
- 1741702258.0
- 1740490946.0
- 1739914648.0
- 1739373231.0
- 1738594534.0
- 1737889728.0
- 1737607505.0
- 1736482517.0
- 1736381860.0
- 1733436101.0
- 1732877493.0
- 1732877172.0
- 1732688956.0
- 1732049551.0
- 1731555942.0
- 1731298680.0
- 1729780372.0
- 1729662455.0
- 1729573607.0
- 1728884895.0
- 1728468635.0
- 1728467375.0
- 1726699425.0
- 1725896136.0
- 1725502164.0
- 1724378517.0
- 1724074590.0
- 1723077856.0
- 1720146344.0
- 1719530238.0
- 1719368987.0
- 1719316355.0
- 1718798044.0
- 1718722880.0
- 1718288385.0
- 1718280186.0
- 1718263767.0
- 1717508925.0
- 1717499735.0
- 1717416722.0
- 1716973048.0
- 1716883153.0
- 1716440589.0
- 1716390879.0
- 1716293036.0
- 1715846315.0
- 1715672051.0
- 1715671456.0
- 1715129991.0
- 1713968259.0
- 1713801006.0
- 1713800868.0
- 1713800274.0
- 1713775639.0
- 1712240264.0
- 1710929111.0
- 1710248187.0
- 1709216366.0
- 1708921638.0
- 1708685396.0
- 1708409500.0
- 1707786405.0
- 1707780222.0
- 1707779812.0
- 1706307108.0
- 1705396668.0
- 1705267165.0
- 1703165791.0
- 1702650411.0
- 1700140559.0
- 1700138880.0
- 1700132857.0
- 1699903523.0
- 1699902819.0
- 1699901694.0
- 1699295877.0
- 1695664785.0
- 1689990290.0
- 1689730742.0
- 1689729031.0
- 1689725452.0
- 1689715716.0
- 1689236999.0
- 1686762960.0
- 1683293587.0
closed_at:
- 1783697732.0
- 1780941422.0
- 1780048017.0
- 1779445795.0
- 1777034208.0
- 1776851252.0
- 1774250391.0
- 1779780421.0
- 1772721040.0
- 1772544714.0
- 1776080850.0
- 1773911958.0
- 1775722357.0
- 1771951209.0
- 1773829594.0
- 1782311235.0
- 1772525240.0
- 1772525255.0
- 1767879230.0
- 1766062910.0
- 1767862996.0
- 1765877913.0
- 1765189710.0
- 1764839513.0
- 1776174284.0
- 1763544644.0
- 1763581316.0
- 1781184264.0
- 1763538992.0
- 1761130802.0
- 1763363454.0
- 1761044595.0
- 1763390240.0
- 1760461564.0
- 1760452154.0
- 1762443308.0
- 1763390450.0
- 1752828039.0
- 1762527660.0
- 1763581315.0
- 1751288836.0
- 1749714323.0
- 1750252840.0
- 1748341978.0
- 1749714411.0
- 1750252463.0
- 1750252441.0
- 1747987000.0
- 1750252557.0
- 1749713339.0
- 1775831290.0
- 1746188064.0
- 1749713623.0
- 1745994212.0
- 1750252829.0
- 1763633979.0
- 1745396211.0
- 1749713766.0
- 1763630189.0
- 1750253276.0
- 1750255260.0
- 1743626479.0
- 1743626193.0
- 1750406535.0
- 1749713560.0
- 1742808872.0
- 1742808955.0
- 1742808923.0
- 1771508123.0
- 1757335329.0
- 1741876621.0
- 1741871799.0
- 1741945773.0
- 1741871782.0
- 1742808896.0
- 1741946301.0
- 1737890192.0
- 1737648629.0
- 1736761055.0
- 1739914597.0
- 1738936654.0
- 1742488012.0
- 1752222501.0
- 1732752496.0
- 1741948579.0
- 1733311293.0
- 1731444252.0
- 1729836870.0
- 1729787819.0
- 1729624391.0
- 1741948648.0
- 1741948925.0
- 1741949313.0
- 1736761478.0
- 1763581315.0
- 1725606011.0
- 1725607833.0
- 1738936574.0
- 1773831486.0
- 1720512430.0
- 1719585140.0
- 1773831003.0
- 1719317175.0
- 1773830660.0
- 1718873408.0
- 1718289518.0
- 1718283826.0
- 1718266059.0
- 1717579612.0
- 1717526061.0
- 1717508580.0
- 1718364211.0
- 1718033665.0
- 1750250829.0
- 1744304904.0
- 1717593816.0
- 1717762897.0
- 1718266105.0
- 1717769765.0
- 1715665250.0
- 1717770033.0
- 1717769705.0
- 1773830512.0
- 1718871407.0
- 1718872099.0
- 1720684692.0
- 1711018037.0
- 1710413712.0
- 1709218623.0
- 1718105815.0
- 1708697049.0
- 1708683167.0
- 1717770078.0
- 1709016436.0
- 1709024797.0
- 1709112235.0
- 1709107701.0
- 1718036941.0
- 1718967371.0
- 1718872215.0
- 1776173612.0
- 1771492336.0
- 1751282381.0
- 1700131903.0
- 1700040553.0
- 1717591852.0
- 1709020840.0
- 1713820241.0
- 1695913290.0
- 1689746927.0
- 1718010063.0
- 1689746671.0
- 1689745920.0
- 1718009821.0
- 1717742981.0
- 1683614086.0
closed_by:
- annasmyk
- charphi
- charphi
- charphi
- charphi
- charphi
- charphi
- annasmyk
- charphi
- charphi
- charphi
- palatej
- charphi
- palatej
- charphi
- TanguyBarthelemy
- palatej
- palatej
- TanguyBarthelemy
- charphi
- charphi
- charphi
- charphi
- charphi
- charphi
- charphi
- charphi
- Immurb
- charphi
- TanguyBarthelemy
- charphi
- TanguyBarthelemy
- charphi
- palatej
- TanguyBarthelemy
- Immurb
- charphi
- palatej
- Immurb
- charphi
- charphi
- charphi
- TanguyBarthelemy
- charphi
- charphi
- annasmyk
- annasmyk
- charphi
- annasmyk
- charphi
- charphi
- palatej
- charphi
- palatej
- annasmyk
- charphi
- Immurb
- charphi
- charphi
- annasmyk
- annasmyk
- palatej
- palatej
- palatej
- charphi
- palatej
- palatej
- palatej
- charphi
- charphi
- charphi
- charphi
- charphi
- charphi
- palatej
- charphi
- CHMcLaren
- palatej
- palatej
- a-s-russo
- Immurb
- palatej
- charphi
- MichelleHedger
- charphi
- Immurb
- Immurb
- palatej
- palatej
- AQLT
- charphi
- charphi
- charphi
- palatej
- charphi
- palatej
- palatej
- Immurb
- charphi
- palatej
- palatej
- charphi
- charphi
- charphi
- palatej
- charphi
- charphi
- palatej
- charphi
- charphi
- charphi
- charphi
- palatej
- annasmyk
- TanguyBarthelemy
- charphi
- charphi
- palatej
- charphi
- ashah12
- charphi
- charphi
- charphi
- charphi
- palatej
- charphi
- charphi
- charphi
- charphi
- Immurb
- charphi
- palatej
- charphi
- charphi
- charphi
- charphi
- charphi
- palatej
- palatej
- palatej
- charphi
- charphi
- charphi
- charphi
- AQLT
- palatej
- charphi
- palatej
- charphi
- charphi
- Immurb
- charphi
- charphi
- Immurb
- AQLT
- ChristianeHofer
creator:
- BeatrizAbadM
- charphi
- charphi
- charphi
- charphi
- charphi
- GeiserX
- a-s-russo
- charphi
- charphi
- Blassik
- Blassik
- Blassik
- Blassik
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- charphi
- TanguyBarthelemy
- charphi
- TakacsP
- charphi
- NikolinaRizanovska
- charphi
- a-s-russo
- Quiet97
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- a-s-russo
- ChristianeHofer
- ChristianeHofer
- a-s-russo
- a-s-russo
- charphi
- charphi
- TanguyBarthelemy
- charphi
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- charphi
- a-s-russo
- walkman-w902
- a-s-russo
- TanguyBarthelemy
- TanguyBarthelemy
- MichelleHedger
- a-s-russo
- a-s-russo
- pmbyron
- a-s-russo
- a-s-russo
- MichelleHedger
- MichelleHedger
- carlos-saez
- carlos-saez
- carlos-saez
- TanguyBarthelemy
- palatej
- Ciamman
- Ciamman
- charphi
- charphi
- charphi
- walkman-w902
- TanguyBarthelemy
- a-s-russo
- TanguyBarthelemy
- TanguyBarthelemy
- CHMcLaren
- pmbyron
- a-s-russo
- a-s-russo
- a-s-russo
- TanguyBarthelemy
- TanguyBarthelemy
- MichelleHedger
- walkman-w902
- a-s-russo
- MichelleHedger
- walkman-w902
- AQLT
- AQLT
- MichelleHedger
- MFatihTuzen
- MFatihTuzen
- a-s-russo
- TanguyBarthelemy
- a-s-russo
- a-s-russo
- TanguyBarthelemy
- a-s-russo
- a-s-russo
- a-s-russo
- a-s-russo
- charphi
- veroniqueelter
- TanguyBarthelemy
- charphi
- charphi
- palatej
- charphi
- charphi
- TanguyBarthelemy
- veroniqueelter
- carlos-saez
- a-s-russo
- TanguyBarthelemy
- charphi
- TanguyBarthelemy
- clemasso
- clemasso
- ashah12
- charphi
- annasmyk
- annasmyk
- annasmyk
- palatej
- TanguyBarthelemy
- charphi
- charphi
- charphi
- a-s-russo
- charphi
- pmbyron
- a-s-russo
- a-s-russo
- a-s-russo
- AQLT
- clemasso
- AQLT
- ChristianeHofer
- MFatihTuzen
- charphi
- charphi
- charphi
- AQLT
- AQLT
- AQLT
- AQLT
- AQLT
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- TanguyBarthelemy
- maria-novas
- AQLT
- ChristianeHofer
assignee:
- annasmyk
- .na.character
- .na.character
- charphi
- charphi
- charphi
- .na.character
- annasmyk
- charphi
- charphi
- charphi
- TanguyBarthelemy
- TanguyBarthelemy
- .na.character
- .na.character
- .na.character
- palatej
- palatej
- .na.character
- .na.character
- .na.character
- charphi
- .na.character
- charphi
- charphi
- .na.character
- .na.character
- JanGerhardt
- charphi
- .na.character
- .na.character
- .na.character
- Immurb
- .na.character
- .na.character
- .na.character
- Immurb
- .na.character
- .na.character
- charphi
- charphi
- .na.character
- .na.character
- charphi
- palatej
- .na.character
- palatej
- .na.character
- .na.character
- .na.character
- charphi
- .na.character
- .na.character
- .na.character
- .na.character
- charphi
- .na.character
- palatej
- charphi
- .na.character
- .na.character
- .na.character
- .na.character
- palatej
- .na.character
- palatej
- palatej
- palatej
- charphi
- charphi
- charphi
- charphi
- .na.character
- charphi
- palatej
- .na.character
- .na.character
- palatej
- .na.character
- .na.character
- palatej
- palatej
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- palatej
- .na.character
- .na.character
- .na.character
- .na.character
- Immurb
- .na.character
- Immurb
- .na.character
- .na.character
- .na.character
- .na.character
- palatej
- charphi
- charphi
- palatej
- charphi
- charphi
- charphi
- charphi
- palatej
- .na.character
- JanGerhardt
- charphi
- charphi
- palatej
- .na.character
- charphi
- .na.character
- .na.character
- charphi
- Immurb
- palatej
- palatej
- charphi
- charphi
- .na.character
- Immurb
- charphi
- .na.character
- charphi
- charphi
- charphi
- .na.character
- charphi
- .na.character
- ChristianeHofer
- palatej
- charphi
- charphi
- charphi
- .na.character
- .na.character
- .na.character
- charphi
- .na.character
- charphi
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
- .na.character
state_reason:
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
- completed
owner:
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
- jdemetra
repo:
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
- jdplus-main
labels:
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: []
  color: []
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: wontfix
  color: '#ffffff'
- name: []
  color: []
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: enhancement
  color: '#a2eeef'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name:
  - bug
  - enhancement
  color:
  - '#d73a4a'
  - '#a2eeef'
- name: []
  color: []
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: enhancement
  color: '#a2eeef'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: question
  color: '#d876e3'
- name: enhancement
  color: '#a2eeef'
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: duplicate
  color: '#cfd3d7'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: []
  color: []
- name: question
  color: '#d876e3'
- name: question
  color: '#d876e3'
- name: enhancement
  color: '#a2eeef'
- name: []
  color: []
- name: enhancement
  color: '#a2eeef'
- name: []
  color: []
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name:
  - enhancement
  - wontfix
  color:
  - '#a2eeef'
  - '#ffffff'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: question
  color: '#d876e3'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: documentation
  color: '#0075ca'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: question
  color: '#d876e3'
- name: bug
  color: '#d73a4a'
- name: bug
  color: '#d73a4a'
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: enhancement
  color: '#a2eeef'
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: bug
  color: '#d73a4a'
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: []
  color: []
- name: bug
  color: '#d73a4a'
comments:
- text:
  - "Hi Beatriz,\n\nI ll do my best to look this up before the end of this week \n\nAnna "
  - |-
    Hello,

    Complex roots corresponding to cycles with a period longer than 2 years are assigned to the trend (which makes sense). That choice was also implemented in the last versions of SEATS. You can find the code in the class TrendCycleSelector (in jdplus-toolkit-base-core); see the method "setDefaultLowFreqThreshold". To be noted that you can't change that threshold.

    Jean
  author:
  - annasmyk
  - palatej
- text: []
  author: []
- text: []
  author: []
- text: []
  author: []
- text: []
  author: []
- text: []
  author: []
- text: []
  author: []
- text: "Hi Anthony,\n\nIt could be indeed a convenient feature...but we think it
    is not a good practice in a statistical process, \nso we won't invest in it \nThanks
    for your understanding, \nAnna  "
  author: annasmyk
- text: |
    This implementation has one topic in one group with the same id.
    This limitation comes from the way Maven archetype is designed.
    It may be possible to overcome this problem by using a groovy script (see post-generation script in https://maven.apache.org/archetype/maven-archetype-plugin/advanced-usage.html)

    To create a new plugin, use the following command:
    ```bash
    mvn archetype:generate \
       -DarchetypeGroupId=eu.europa.ec.joinup.sat \
       -DarchetypeArtifactId=jdplus-main-archetype \
       -DarchetypeVersion=3.6.1-SNAPSHOT \
       -DgroupId=demo \
       -Dtopic=abc
    ```
  author: charphi
- text: []
  author: []
- text: '@Blassik  You are right; these changes should have been included in the changelog.
    We have discussed the issue internally and will pay special attention to it in
    future releases.'
  author: charphi
- text:
  - What do you mean by outlier suggestion? Is it the presentation of the outliers
    (grid or list)? Or automatically detected outliers?
  - I meant automatically detected outliers. Thanks for the question, I'll edit my
    initial post to make that clear.
  - Hi @Blassik , can you provide an example with data (no confidential data) and
    workspace ?
  - "Hi Tanguy\n\nHere's a workspace (including data) that detects different outliers
    in v3.6 to v3.5.1. This workspace has not yet had cruncher run  on it.\n[different-automatically-detected-outliers-workspace.zip](https://github.com/user-attachments/files/26105658/different-automatically-detected-outliers-workspace.zip)\n\nHere's
    the demetra_m files I receive for it from each version of JD- you can see the
    AO in 2005-08 changes to an LS, the LS in 2005-06 has a different value (this
    also applies to the LS at 2005-04) and the AO in 2005-05 moves back a period and
    becomes negative. \n[demetra_m 3.5.1.csv](https://github.com/user-attachments/files/26105728/demetra_m.3.5.1.csv)\n[demetra_m
    3.6.csv](https://github.com/user-attachments/files/26105729/demetra_m.3.6.csv)"
  - "This is an interesting example. As we can see in the output, the likelihoods
    of both models are exactly the same.\nDifferent combinations of (quasi-)successive
    \ outliers can lead to strictly equivalent models. The software will choose one
    of them quasi randomly (depending on some numerical imprecision). So, very small
    changes in the algorithms will lead to apparently different results. To be noted
    that it is not always easy to see that the models are equivalent. \nIf the models
    will lead to similar regarima results, the components (T, S, I) could be different
    (depending on the choice/position of AO/LS). That's why it is necessary to monitor/fix
    such outliers.\nFinally, beside your example, small changes between different
    versions could always lead to different results in the case of unstable models."
  author:
  - TanguyBarthelemy
  - Blassik
  - TanguyBarthelemy
  - Blassik
  - palatej
- text:
  - |-
    This behaviour may in fact occur more often than expected, particularly when manipulating workspace and transferring SA-Items. I've had this happen several times in production.

    According to my tests, when the variable is defined as a calendar regressor (trading days), the series becomes **Invalid** when the variable becomes missing.

    <img width="694" height="159" alt="Image" src="https://github.com/user-attachments/assets/5beda9a7-a1c8-4524-b980-78013d141209" />

    However, when the variable is set as a user-defined variable, whatever the regression effect, the variable will be **Removed** automatically and the model will be estimated.

    <img width="290" height="67" alt="Image" src="https://github.com/user-attachments/assets/e157dccf-727a-4313-990a-429ff551bbd3" />

    As far as the cruncher is concerned, remember that any refresh policy other than ‘None’ or ‘Current’ will require the domainSpec to refresh the model (See #880). So, if the variable is not registered in the domainSpec but only in the estimationSpec, it will not be taken into account and the estimation can still take place.
  - Thanks Tanguy. For context, I was referring to a UDV applied in the domainSpec,
    and I was using the Concurrent refresh policy.
  - |
    Hi @Blassik, so we discuss it with @palatej.
    Currently, it's the new behaviour to handle missing/renamed variable.

    If a variable is not found, it will be removed.

    In future, we will ensure that our release notes are comprehensive and include more detailed warning and error messages.
  author:
  - TanguyBarthelemy
  - Blassik
  - TanguyBarthelemy
- text:
  - 'In my opinion, switching to Additive mode was a mistake and the correct behaviour
    is not to generate any output. However, the user should be warned (as in #652).'
  - "We are working on information in the case of errors or warnings. In this specific
    case, we indeed discussed and decided to change the previous behaviour. The explanation
    is generated but not dispatched yet. Work in progress, for future releases. \nNow,
    it should indeed be mentioned in the release notes...\nI don't believe that there
    are other cases of unprocessed series."
  - Thanks @palatej. Does that mean that the cruncher will never change the decomposition
    mode or transform function now?
  author:
  - TanguyBarthelemy
  - palatej
  - Blassik
- text: This behaviour should be documented. I will linked this issue to the documentation.
  author: TanguyBarthelemy
- text:
  - |-
    If you put \<refreshall\>false\</refreshall\>, the raw data should not be updated.

    If you put no policy or \<policy\>None\</policy\>, it should not update the model. Or Current also says:

    > The new sa series is only based on previously computed seasonal factors (estimates+forecasts)
    > Nomenclature in line with the guidelines

    Afaik it always creates the demetra_m file even if no matrix output is specified.
  - "Ok thank you! \nI need to test that."
  author:
  - Immurb
  - TanguyBarthelemy
- text:
  - "Hi Tanguy,\n\nThe current cruncher is not able to generate output corresponding
    to arrays/matrices. We should add new entries in the config file to allow this.
    So, you get in your output matrix cells containing matrices, which is of course
    not expected.\nTo be noted that the cruncher doesn't check that what you ask is
    in the allowed dictionary.\nWe will try to add such output in the future. "
  - |-
    Thank you Jean.
    In fact, I'm trying to exhaustively list the possible inputs and outputs to the cruncher (and output GUI and R packages) for the user (and of course the V2/V3 translation to resolve issues like #872).
  author:
  - palatej
  - TanguyBarthelemy
- text: |-
    That's not a bug. See my comment on #874 .
    You should use "decomposition-global-msr" in a matrix output
  author: palatej
- text:
  - The `activeSpecification` is either the `estimationSpec` or if it doesn't exist
    the `domainSpec` see https://github.com/jdemetra/jdplus-main/blob/develop/jdplus-main-base/jdplus-sa-base-parent/jdplus-sa-base-api/src/main/java/jdplus/sa/base/api/SaDefinition.java#L55-L57
  - ok ! Thank you
  author:
  - Immurb
  - TanguyBarthelemy
- text:
  - "Works fine now. \n\nOne and a half million observations is the new frontier.
    \n(see `sdmx-dl:/STATCAN_HFED/CCEI%2CDF_HFED_AB%2C1.0/N.CA_AB.CA_BC.NSI`)"
  - Which is a lot!
  - Latest version of java-desktop-util improves rendering when there are a lot of
    NaN values.
  author:
  - charphi
  - TanguyBarthelemy
  - charphi
- text:
  - Bug linked to https://github.com/nbbrd/java-desktop-util/issues/473
  - Bug fixed in https://github.com/nbbrd/java-desktop-util/releases/tag/v2.6.0
  - "Thank you, the problem has indeed been resolved. \nHowever, I am still observing
    strange behaviour (just a blank column name) in one case:\n\nhttps://github.com/user-attachments/assets/eb0fad68-8318-4444-85c4-7013cd2e2bfa\n"
  - Fixed in https://github.com/nbbrd/java-desktop-util/releases/tag/v2.6.2
  author:
  - charphi
  - charphi
  - TanguyBarthelemy
  - charphi
- text: []
  author: []
- text: "Hi TakacsP. \n\nEvery jars are available on Maven Central: https://search.maven.org/artifact/eu.europa.ec.joinup.sat/jdplus-toolkit-base-api\nSee
    \"structure\" and \"naming\" at https://github.com/jdemetra/jdplus-main#structure
    to know which jar you need.\n\nTo build it youself, see the instructions at https://github.com/jdemetra/jdplus-main#developing"
  author: charphi
- text: |-
    > [!NOTE]
    > `WEEK_MONDAY` now produces time series with `P1W` unit instead of `P7D` as it used to do
  author: charphi
- text: |-
    @NikolinaRizanovska JD+ uses the charset `ISO_8859_1` for exporting CSVs and this charset doesn't support some characters that you are using. The result is then the exception named `UnmappableCharacterException`.

    The new pull request #948 adds an option to choose the charset (`UTF-8` should be fine for you).
  author: charphi
- text: []
  author: []
- text:
  - 'Related (*more or less*) to #420'
  - 'Thanks @TanguyBarthelemy. It''s also somewhat related to: https://github.com/jdemetra/jdplus-main/issues/661
    which is probably a duplicate issue of your issue that I''ve now realised.'
  author:
  - TanguyBarthelemy
  - a-s-russo
- text:
  - This feature has not been implemented yet in JD3. I will check if it can be included
    in a possible future release.
  - Will be available in the release. You can check it in the nightly builds (https://github.com/nbbrd/jdemetra-app-snapshot/releases/tag/latest)
  author:
  - JanGerhardt
  - Immurb
- text: 'Bug introduced in #681 and fixed in #805'
  author: charphi
- text: |-
    Okay, I found them!
    Actually, by default, these tests are disabled for quarterly series.

    To enable them, go to **Tools** -> **Options**:

    <img width="520" height="258" alt="Image" src="https://github.com/user-attachments/assets/7177c0e2-e1bb-43f0-9e70-9e738524ee81" />


    Then **SA** -> **X13** -> **Residuals trading days tests** (double click) -> uncheck **Monthly only**:

    <img width="833" height="706" alt="Image" src="https://github.com/user-attachments/assets/022ac6c2-0985-46a9-990e-5df4e5742e4d" />

    Then, just restart your workspace.
  author: TanguyBarthelemy
- text:
  - "It is possible to launch several instances of JD+ at the same time as described
    in this old documentation:\nhttps://github.com/jdemetra/jdemetra-app/wiki/Quick-install-guide#a-few-tips\n\n>
    `--userdir`: specify a **custom user directory** that can be used to **launch
    several sessions** at the same time  \n>   e.g. `nbdemetra64.exe --userdir \"_USERDIR_PATH_\"`\n"
  - Ok so for each instance, I need to create a new `_USERDIR_PATH_` directory and
    launch JDemetra+ with `--userdir "_USERDIR_PATH_"`
  author:
  - charphi
  - TanguyBarthelemy
- text:
  - "There is already a tooltip for every input as far as I can see. \n\n<img width=\"977\"
    height=\"493\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/1187fefe-86d0-435e-9b8b-85df63e83ff9\"
    />"
  - You're right I didn't see that. Thank you again!
  author:
  - Immurb
  - TanguyBarthelemy
- text:
  - |-
    Just to add some additional information:

    1. Still happens in the develop branch
    2. Seems to duplicate only the last added items (last transfer) when the corresponding data file is reloaded
    3. Only happens once, so if you reload the same data file multiple times only one set of duplicates is added
    4. No new data is needed in the data file and it doesn't matter if you add any data files to the provider (Step 5 and 6)
    5. Seems to be related to the events fired in InternalTsProvider (so not only xlsx shows this behaviour)
  - "I've just tested and in my case I must change the data (Step 5 and 6) in order
    to reproduce the problem.\nBTW, the behavior of drag&drop (not frozen) is different
    from the copy-paste (frozen)!\n\n**Update**: you must at least save the file (without
    changing its content) in order to trigger a change event. "
  - 'Fixed by #801 '
  author:
  - Immurb
  - charphi
  - charphi
- text:
  - "Thanks Tanguy. \nI see the bug. I correct it immediately."
  - 'Fixed in #759 '
  author:
  - palatej
  - palatej
- text:
  - 'Hi you can find the implementation of stock trading days here: [StockTDFactory](https://github.com/jdemetra/jdplus-main/blob/develop/jdplus-main-base/jdplus-toolkit-base-parent/jdplus-toolkit-base-core/src/main/java/jdplus/toolkit/base/core/modelling/regression/StockTDFactory.java)'
  - Thank you!
  - |
    Thank you, it's very clear now !
    I wrote a [small document](https://github.com/user-attachments/files/22906899/stock.md) on it (but in french). We will add it to the documentation I think.
  author:
  - Immurb
  - TanguyBarthelemy
  - TanguyBarthelemy
- text: []
  author: []
- text: 'Fixed by #801 '
  author: charphi
- text: That should work now (in dev)
  author: palatej
- text: []
  author: []
- text: "Partially done in #808 \n\nThe notification is more obvious and the exception
    is uncluttered.  \nIt is not yet as explicit as your example as it requires more
    work in JD+ and in some external libraries.\n\nI've created a new issue to adress
    the readability problem: #809"
  author: charphi
- text:
  - Experimental build done by https://github.com/nbbrd/jdemetra-app-snapshot/commit/64b83acd6846ed3d87abf07683a279f402e8d2eb
  - Done in https://github.com/jdemetra/jdplus-main/pull/669
  author:
  - charphi
  - charphi
- text: []
  author: []
- text:
  - "This is the time series (ts), it contains all information of the time series
    e.g. the moniker.\nIf it has a moniker it gets the frozen suffix to mark that
    it is not necessarily the latest data.\n\nWhat do you mean with \"change\"? In
    the base GUI I don't think there is any intended way to replace or modify the
    time series of a SaItem, but in the code you can create a new SaItem with a different
    Ts.\n\nBtw Ts is not only a part of SaItem it is a major part of JDemetra and
    this xml representation is always used when a Ts object is saved. "
  - |-
    Thank you @Immurb .
    In fact I was wondering because I had noticed that the name of the ts could change after a refresh for example.

    Also, there was a case of a ts name that had `(frozen) (frozen)` as a suffix, but I can't find the case anymore.
  author:
  - Immurb
  - TanguyBarthelemy
- text:
  - "Migration was already done but snapshots where not enabled: https://central.sonatype.com/publishing/namespaces\nToken
    needs to be generated: https://central.sonatype.com/account\n\nSnapshots are available
    at https://central.sonatype.com/repository/maven-snapshots  \nand can be browsed
    at https://central.sonatype.com/service/rest/repository/browse/maven-snapshots/\n"
  - Done in f04af4980d784eeaa500d9b81deb6a6a9056fa33
  author:
  - charphi
  - charphi
- text:
  - "You are right. I introduced that behaviour explicitly in the past for new multi-processing.
    The idea was: If we want to modify the spec (which is the refence spec) at this
    point, that's because it is not fully suited to the considered series. So the
    modified spec ( which is now the first estimation spec ) should become automatically
    the new reference spec. \nWe have now other ways to modify the reference (or domain)
    spec and that special (perhaps misleading) behaviour can be avoided. \nI will
    add a menu item to promote the estimation spec to reference spec."
  - |
    Thanks for your quick feedback. OK, I'd pretty much understood that behaviour too.
  - 'See #644 '
  author:
  - palatej
  - TanguyBarthelemy
  - palatej
- text: I consider it as a normal behaviour.
  author: TanguyBarthelemy
- text:
  - The refreshing policy is applied on the last saved items. For the moment, if we
    refresh an item with unsaved modifications of the domain spec, those modifications
    are indeed lost. I am just modifying that behaviour. Don't forget to test.
  - "\U0001F440\U0001F468\U0001F3FB‍\U0001F4BB"
  - 'See #644 '
  author:
  - palatej
  - TanguyBarthelemy
  - palatej
- text: []
  author: []
- text:
  - 'Related to #612 (for the bug on basic checks)'
  - Thanks for bringing this to our attention @TanguyBarthelemy!
  - |-
    Description of the special cases of regression effects (the other cases are obvious). To be noted that there is no restriction to assign a regression variable to a component.

    Regression effects assigned to "undefined": they are used for the regarima modelling, but not removed from the linear series; so, such effects are spread out in all the components (T, S, I).
    Regression effects assigned to "series": they are used for the regarima modelling and than removed from the original series; y - reg(series) = t + s + i or y = t + s + i + reg(series)
    Regression effects assigned to "sa" : sa = t + i + reg(sa).

    The last two options should be used with caution (they were integrated in the original Tramo-Seats)
  - Thanks for your reply @palatej. Could you please also explain the case for the
    'CalendarEffect' regression effect, and explain why it is seemingly not taken
    out of the seasonally adjusted series as evidenced above? Conceptually, we would
    have thought that the SA series has removed calendar effects too. Is this intended
    behaviour, or is it a bug? Is it distinguished from the 'Seasonal' regression
    effect?
  - |
    The 'Calendar effect' regression effect was added quite recently (not in version 2); it was indeed not fully implemented in X13. I just corrected the problem. For user-defined trading days effects, the user should use the corresponding option in the trading days specs (the significance of the variables is tested). The other user-defined calendar effects could be, for instance, specific Easter effects, other moving holidays effects or even other trading days effects that will be added to the model (not tested).
    In the final decomposition, any calendar effect will be in the seasonal (and of course removed from the seasonally adjusted series).
  - Thanks for explaining further @palatej and for fixing the problem. This makes
    more sense now.
  author:
  - TanguyBarthelemy
  - a-s-russo
  - palatej
  - a-s-russo
  - palatej
  - a-s-russo
- text: Done in https://github.com/jdemetra/jdplus-main/pull/635
  author: charphi
- text:
  - |-
    @a-s-russo it seems to work properly with v3.6.0.
    Could you test it against this version ?
  - Hi @charphi. We haven't upgraded to v3.6.0 yet. Hopefully we will soon. When we
    do, I will test it, and report back to you.
  - Hi @charphi, my colleague and I tested this on behalf of @a-s-russo, and unfortunately
    it still isn't working for us with version 3.6 (running in Amazon AppStream).
    I tried they copy-paste using ctrl-C & ctrl-V and it doesn't work for the first
    grid I open after opening a Workspace, but if I open a grid, drag and drop things
    in there, then ctrl-C a series, then close the grid then open another one, ctrl-V
    will work. But it will paste in the last series I pasted into the previous grid,
    not necessarily the most recent series that I copied (with ctrl-C).
  - '@pmbyron I''ve been able to reproduce your problem. I''m not sure why it fails
    ... so I''m investigating.'
  - "The problem comes from the underlying JGrid component that doesn't request the
    focus when clicked.\nTherefore, it doesn't handle the keyboard shortcuts events. "
  - Fixed in https://github.com/nbbrd/java-desktop-util/releases/tag/v2.7.0
  author:
  - charphi
  - a-s-russo
  - pmbyron
  - charphi
  - charphi
  - charphi
- text:
  - I just corrected the mistake (which only appeared in X13)
  - 'See #615 '
  author:
  - palatej
  - palatej
- text:
  - "Did it do anything in v2 except from adding an Integer for sorting? In v3 the
    functions are just empty shells at the moment.\n\nIt starts at \nhttps://github.com/jdemetra/jdplus-main/blob/d3063637277b051c02d0c5c2550918091be0fd39/jdplus-main-desktop/jdplus-sa-desktop-plugin/src/main/java/jdplus/sa/desktop/plugin/multiprocessing/ui/SaBatchUI.java#L911-L917"
  - Yes, in a way.
  - 'I added the previous commands to set priorities (log or level-based) + a custom
    dialog box (you set the priority you want) See #629.'
  author:
  - Immurb
  - TanguyBarthelemy
  - palatej
- text:
  - |-
    If you use transform.function = 'None' the only possible x11.mode is 'Additive', and it is automatically chosen internally.

    For reference #462 and #478

    The relevant code for the decision:

    https://github.com/jdemetra/jdplus-main/blob/d3063637277b051c02d0c5c2550918091be0fd39/jdplus-main-base/jdplus-x13-base-parent/jdplus-x13-base-core/src/main/java/jdplus/x13/base/core/x13/X13Kernel.java#L229-L254

    The XML is as far as I am concerned not part of the external JDemetra API and can have strange information that are "cleaned" inside JDemetra.
  - 'Even if it doesn''t generate any problem, I will changed the decomposition mode
    to avoid misunderstanding. '
  - Thanks for the explanation @Immurb and for the update @palatej. Much appreciated!
  - |-
    Hi @palatej and @Immurb. We have also noticed that when regarima.transform.function is changed in the GUI from 'None' to 'Log', x11.mode does not update to 'Multiplicative' automatically.

    Presumably if regarima.transform.function = 'Log' and x11.mode = 'Additive' in the XML, the external JDemetra API sees this as 'Log' and 'Multiplicative', however could this also be changed as above to avoid misunderstanding? (I.e. if 'Log' is selected, X11.mode automatically changes to 'Multiplicative'?)
  author:
  - Immurb
  - palatej
  - MichelleHedger
  - MichelleHedger
- text: seems to be fixed in 3.51
  author: annasmyk
- text: []
  author: []
- text:
  - |-
    Hi,

    the date format of your csv is dd/MM/yyyy but the default date format for csv in JDemetra is yyyy-MM-dd (at least for me).
    After changing the format it loads fine for me.
  - Thanks Thomas. It's working now for me. Sorry I had tried changing the date format
    previously but it didn't work, perhaps I had forgotten to change the separator
    from tab to comma in that instance.
  author:
  - Immurb
  - pmbyron
- text:
  - Hi @palatej and @charphi. Could we please have this issue investigated as a priority?
  - "Hi Anthony, \nThanks for your very useful feedback ..I'l be doing training the
    next 2 days ;-)\nIf you save an empty workspace / reopen/ start working : it seems
    to work correctly from the start\n\nAnna "
  - |-
    Hi,
    the problem seems to be, that saving the workspace changes the items in the multi-document. The selected item in the detail view and its specification are not the "real" item anymore. Reselecting the item fixed the problem, but that is a really strange behaviour to enforce from the user.

    It should be possible to reselect the right items internally.
  - Thomas is right. I am correcting the problem
  - Thanks @palatej, @Immurb and @annasmyk for the prompt investigations! Looking
    forward to the fix for this issue.
  - 'Corrected in #606 '
  author:
  - a-s-russo
  - annasmyk
  - Immurb
  - palatej
  - a-s-russo
  - palatej
- text:
  - |
    Hi Anthony,

    I use it to come back from a zoom ...
    (it might have other purposes as well, though ;-)

    Anna
  - |-
    Thanks @annasmyk for the tip. That's the one thing I didn't try! Indeed, it can be used to zoom back out.

    (Perhaps the button could be disabled in the right-click context menu when already zoomed out to make this clearer, or it could be labelled as 'Zoom out' instead.)
  - we should call it "reset zoom"
  author:
  - annasmyk
  - a-s-russo
  - annasmyk
- text: Expected behaviour. (Note that XML files are for internal use)
  author: annasmyk
- text: Expected behavior. (Note that XML files are for internal use only)
  author: annasmyk
- text:
  - That's due to numerical imprecision. We can't compute the roots of a polynomial
    exactly (in your example, you know exactly the solution). So, using a seasonal
    tolerance equal to 0 should be avoided (it should indeed lead to random results).
  - Thank you for your quick response!
  author:
  - palatej
  - carlos-saez
- text:
  - "By default, Tramo-seats uses the wiener-kolmogorov filters for computing the
    standard deviations; this is a fast approximate solution based on a semi infinite
    approach. On the other hand, ucarima_estimate always uses the kalman smoother,
    which provides an exact solution. The differences between the standard deviations
    are usually small. However, when the model contains quasi unit-roots in the MA
    polynomials, the differences can be significant. \nTo be noted that you can always
    select the Kalman smoother in the GUI. After some discussions with V. Gomez, I
    think that we should put the Kalman smoother as the default in the GUI (in a future
    version)."
  - Thank you for your quick response!
  author:
  - palatej
  - carlos-saez
- text: "Hello Carlos,\nThe routine seems to work correctly. The \"problem\" comes
    from the different uses of the auto-regressive parameters between JD+ and R. In
    JD+ (like in Tramo), we use what we call the \"true signs\". See for instance
    the description of Tramo. \nIn R (and in the original X13), we use the opposite
    signs for auto-regressive parameters.\nSo, the differencing operator D (= 1 -
    B) corresponds to ar=-1 in Tramo and to ar=1 in R. \nIn the AMI procedure of JD+
    (Tramo/X13), 1+0.99*B is not changed in 1+B while 1-0.99*B is changed in 1-B.\nTo
    be noted that if you fully specify a model, the unit root test is not done."
  author: palatej
- text: |-
    Solved in #626 .

    The actual names for those diagnostics are in v3:

    diagnostics.fcast-insample-mean
    diagnostics.fcast-outsample-mean
    diagnostics.fcast-outsample-variance

    They returns "StatisticalTest" (with value, pvalue, description)
  author: palatej
- text: 'Solved in #568 '
  author: palatej
- text:
  - It seems to restore to the last saved specification in the details windows without
    actually saving this specification into the item. After deselecting and reselecting
    the item the old specification is back again.
  - 'Solved in #568 '
  author:
  - Immurb
  - palatej
- text:
  - |-
    For the time being, the automatic selection of the corresponding outlier (seasonal or other) must indeed be activated to avoid the problem.
    I will correct it (in 3.4.1).
    Thank you.
  - 'Solved in #568 '
  author:
  - palatej
  - palatej
- text:
  - |-
    NetBeans dependency (command line processing API):
    ```xml
    <dependency>
        <groupId>org.netbeans.api</groupId>
        <artifactId>org-netbeans-modules-sendopts</artifactId>
    </dependency>
    ```

    Some explanation:
    https://stackoverflow.com/a/30507160
  - |-
    Prototype:
    ```java
    public final class VersionArgsProcessor implements ArgsProcessor {

        @Arg(shortName = 'v', longName="version", defaultValue = "")
        @Description(shortDescription="#DESC_StartJavaLanguageServer")
        @NbBundle.Messages("DESC_StartJavaLanguageServer=Starts the Java Language Server")
        public String[] myVersion;

        @Override
        public void process(Env env) throws CommandException {
            Stream.of(getVersion()).forEach(env.getOutputStream()::println);
        }

        private static String[] getVersion() {
            SystemProperties sys = SystemProperties.DEFAULT;
            return new String[]{
                    "About.getName()" + " " + "About.getVersion()",
                    "JVM: " + sys.getJavaVersion() + " (" + sys.getJavaVendor() + " " + sys.getJavaVmName() + " " + sys.getJavaVmVersion() + ")",
                    "OS: " + sys.getOsName() + " " + sys.getOsVersion() + " " + sys.getOsArch()
            };
        }
    }
    ```
  - 'Some doc: https://netbeans.apache.org/wiki/main/wiki/HowToParseTheCommandLine/'
  - |-
    For reference, my command to test this feature:

    `mvn clean install -DskipTests && jdplus-main-desktop-bin\target\nbdemetra\bin\nbdemetra64.exe --nogui --nosplash --version --jdkhome %java_home% --userdir C:\Temp\nb1 --cachedir C:\Temp\nb2`
  author:
  - charphi
  - charphi
  - charphi
  - charphi
- text: []
  author: []
- text:
  - More on https://github.com/apache/netbeans/issues/8258
  - |-
    Done in 900fd62da49d13acb2b588fac4fd43de6908e958

    ⚠ May change in next version of Netbeans Plaform (26)
  - |-
    > ⚠ May change in next version of Netbeans Plaform (26)

    @charphi `-J-DTopSecurityManager.disable=true` will become a no-op in NB 26 since the custom security manager won't be there anymore. So everything should keep working. Removing that property again is just a cleanup task ;)
  - '@mbien Thanks for the information!'
  - Done in https://github.com/apache/netbeans/releases/tag/26
  author:
  - charphi
  - charphi
  - mbien
  - charphi
  - charphi
- text:
  - "As far as I can see the bug was introduced with #514 and is affecting all SingleSelectionCommands
    e.g. Open, Rename as they are always disabled (in this context). \n\nhttps://github.com/jdemetra/jdplus-main/blob/b3823630e189344ba505e18103655af086d52519/jdplus-main-desktop/jdplus-toolkit-desktop-plugin/src/main/java/jdplus/toolkit/desktop/plugin/components/parts/HasTsCollectionSupport.java#L294-L299"
  - 'Related issue: #511 '
  - Done in 2280b385fccc6260b54b8f56a1e46fe2c0900333
  author:
  - Immurb
  - charphi
  - charphi
- text:
  - |-
    Hi Tanguy,

    You have all the necessary diagnostics: independence is usually estimated by the doornik-hansen test ('residuals.doornikhansen') and independence by 'residuals.lb' (Ljung-Box); there are other tests. Nothing new in comparison of JD2.2.6. (perhaps the identifiers have changed).
  - Ok thanks Jean, I will investigate these items!
  author:
  - palatej
  - TanguyBarthelemy
- text:
  - |-
    That's something that we must indeed remove. The previous bug was just hiding that old useless menu item.
    Thank you. I will fix it in 3.4.1
  - |-
    Note further @palatej that this DEBUG option is also occurring in the context menu when right-clicking in the Aggregation panel:

    ![Image](https://github.com/user-attachments/assets/cf64127b-6350-430f-84ba-43a4e461beb0)
  - Done in 7613b61919b0b90f896ff99e20d15bbc2f9532ad
  author:
  - palatej
  - a-s-russo
  - charphi
- text:
  - |-
    Hi Tanguy,

    Could you send me the series + used spec. I can't reproduce the problem
  - "Hi Jean, \n\nHere you can find a WS that is problematic : [ws_error_rev.zip](https://github.com/user-attachments/files/18785536/ws_error_rev.zip)\n\nI
    have the impression that it comes from pre-specified specification but not sure
    and I didn't push enough the subject..."
  - "Thank you Tanguy.\nThe problem is generated by the series span.\nThe way we should
    handle revisions history is not always clear with some time span (for instance
    the last x periods).\nI will consider that the reference series for the revision
    history is the series defined by that span (and I will discard any other data).\nTo
    be noted that in the model stability panels I use the complete series, which makes
    sense: the goal is different.  "
  author:
  - palatej
  - TanguyBarthelemy
  - palatej
- text:
  - "High Tanguy,\n\nFirst, a short recall:\nREPOSITORY specifies the folder containing
    the documents\nPREFIX is the prefix used to generate the name of new documents.\nREPOSITORY
    should not changed in the future to keep compatibility. PREFIX could become different
    if need be. \n\nUntil now, they where not always used (what generated inconsistencies)
    or not correctly used (REPOSITORY instead of PREFIX). That didn't generate real
    problems (for the time being, REPOSITORY = PREFIX in most cases). However, the
    situation was not clear and error-prone (especially for the future). That's why
    I just refactored the repo/prefix of the different documents/specs (in the main
    project only). They are now all specified in the different \"handlers\" (SaHandlers,
    TramoSeatsHandlers...), so that the same names are used in the GUI or in R. I
    also tried to always refer to those central identifiers.\nI tested the new code
    carefully, but it would be nice if you could also check that everything works
    correctly (in R especially).\n\n"
  - Done in c662474aaf134159892dc2a837cd421678b33314
  author:
  - palatej
  - charphi
- text: []
  author: []
- text:
  - "Thanks Peter.\nI see the bug. I am correcting it. \nIt will be fixed in 3.3.1
    \n\nJean"
  - Thanks Jean :-)
  author:
  - palatej
  - pmbyron
- text: "\"Period\" is the periodicity (number of obs by cycle) of the seasonal (more
    generally periodic) component of the SARIMA model (Box-Jenkins definition). In
    most cases, it is undefined (=0) and automatically derived from the context (usually
    the frequency of the series). In a few advanced use cases, we must specify it
    explicitly. That's never the case in X13.\r\nIf it is not specified in xml, it
    is considered equal to 0."
  author: palatej
- text: The Check Last panel contains indeed several bugs. I corrected most of them
    (I hope so!). Corrections in the develop branch.
  author: palatej
- text: Fixed in 39dedb033909b6c4b240015425b818df0412a470
  author: Immurb
- text:
  - 'Related to quaterly series. '
  - No. That's just because those lines are related to different groups of diagnostics
    (which can be enabled/disabled separately).
  - |-
    So here, there is no test for `spectral td peaks`?
    Is it related to the frequency? Or the data?
  author:
  - TanguyBarthelemy
  - palatej
  - TanguyBarthelemy
- text:
  - 'Related issues: #159 #293'
  - |
    ### Additional examples

    #### JTsGrid

    <img width="425" height="305" alt="Image" src="https://github.com/user-attachments/assets/628e0911-4290-41d0-b69d-873e16109ace" />

    #### Properties

    <img width="486" height="342" alt="Image" src="https://github.com/user-attachments/assets/7bcb64a3-1eed-4a28-8151-5f35728286db" />

    #### JTsTable

    <img width="466" height="136" alt="Image" src="https://github.com/user-attachments/assets/2f397d47-7089-47c8-a17b-5faef0632d61" />

    #### JTsCheckLastList

    <img width="594" height="183" alt="Image" src="https://github.com/user-attachments/assets/7c772448-52b6-4e93-9c98-f30b4a62e00b" />
  - Done in https://github.com/jdemetra/jdplus-main/pull/681
  - "Hi @charphi , \nI just tested, and it appears that the display hasn't changed?\n\nor
    I don't understand the changes..."
  - To test new features before a release, you can download a snapshot version of
    JD+ at https://github.com/nbbrd/jdemetra-app-snapshot/releases/tag/latest
  - |
    Hi thank you @charphi, I just tested the snapshot version and a big part of the issue has been corrected!
    However, it remains some different display:

    - [ ] for the SI-ratio graph (`Q1`, `Q2`, `Q3` and `Q4`)
    - [ ] for the table of input series (quarter in columns and year in rows) (`Mars`, `Juin`, `Septembre`, `Décembre`)

    Also a small remark but I find the format II-2024 or Q2-2024 more clear than 4-2024/P3M (which of course follow the ISO 8601)
  - "I would like to add a few comments on the Revisions history tab.\n\nMonth and
    quarter numbers are displayed in digits (1 to 12 or 1 to 4):\n\n<img width=\"289\"
    height=\"252\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/b1555228-cfc1-4f88-bc92-ce5d69a022a3\"
    />\n\n<img width=\"282\" height=\"112\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/332d617c-bbbe-4cc9-8856-32e0ec76d2cf\"
    />\n\n\nIn the chart with future revisions, the dots are not aligned with the
    corresponding dates. For example, on the chart below, the Q4 2020 point falls
    between 2 graduations (between September and November). \n\n<img width=\"628\"
    height=\"546\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/6b9466ba-b41b-4a81-a243-c3ad4d0995bf\"
    />\n\n"
  - |-
    Also, in the Sliding spans tab, the periods are indicated in English, whereas in other tabs, the system language (French for me) is used.

    <img width="799" height="343" alt="Image" src="https://github.com/user-attachments/assets/5c964ea8-ac5a-4044-a263-f0b8a7ae810e" />

    For quarterly data, the notation Q1, Q2, Q3 and Q4 is used (as for SI ratios).

    <img width="671" height="286" alt="Image" src="https://github.com/user-attachments/assets/8f1f4889-78c8-4bf5-9381-55efc48d93d8" />
  author:
  - charphi
  - charphi
  - charphi
  - TanguyBarthelemy
  - charphi
  - TanguyBarthelemy
  - TanguyBarthelemy
  - TanguyBarthelemy
- text:
  - "This documentation is not up to date. Please refer to the [new documentation
    of JDemetra+](https://jdemetra-new-documentation.netlify.app/).\r\n\r\nThere,
    you can find a section on [Direct / Indirect method](https://jdemetra-new-documentation.netlify.app/t-gui-sa-modelling-features#in-gui-v2)
    and your information:\r\n\r\n> This Direct-Indirect method is not implemented
    in v3.\r\n\r\nSo I assume you are working with JDemetra+ in version >= 3.0"
  - That makes sense, thanks Tanguy!
  author:
  - TanguyBarthelemy
  - MichelleHedger
- text: "I'm sorry, it seems to be my fault. I've tried to update SA on machine that
    seems to have corrupted JDK installation - after I performed clear installation
    of the kit Jdemetra updates multi-SA documents fine.\r\n\r\nThe issue can be closed
    now."
  author: walkman-w902
- text:
  - "Under Options -> Demetra -> Behaviour there is the option \"Show low-level options\",
    if it is checked all parameters that were available in version 2 should be visible.\r\n\r\n'hrinitial'
    is not used anymore."
  - "Thanks for explaining @Immurb. I assume `armalimit` is also no longer used, since
    I cannot find it even when switching on the low-level options?\r\n\r\n![image](https://github.com/user-attachments/assets/859b6ebd-e5ca-412b-a6c0-8ea4906ba8b7)"
  author:
  - Immurb
  - a-s-russo
- text: "AQLT had the same question in #462\r\nTo quote Jean:\r\n\r\n> X11.mode only
    appear when you have several choices:\r\n> \r\n> log transformation -> multiplicative
    or log-additive\r\n> no pre-adjustment\r\n> In all the other cases, it is automatically
    derived from the transformation (fn=auto) or it can't be modified (fn=add)\r\n\r\n>
    You can do a log-additive decomposition with pre-processing when logs have been
    chosen (choice between multiplicative or log-additive).\r\nFor the pseudo-additive
    decomposition, you can't indeed use pre-processing."
  author: Immurb
- text:
  - One thing that have worked for "unfreezing" results for this and other series
    was ticking out Julian box or selecting other specification, then copying problematic
    series, pasting it in the same document and then deleting the pasted series (twice
    for unknown reason).
  - "I could reproduce the error with the following steps:\r\n\r\n1. Create a new
    Workspace.\r\n2. Clone the Tramoseats specification RSAfull.\r\n3. In the new
    specification set Regression->Calendar->Julian and remove Regression->Calendar->Test\r\n4.
    Create a new multi-document\r\n5. Set the reference specification to the new specification\r\n6.
    Add a time series to the multi-document\r\n7. Click the created item -> ClassCastException
    is thrown\r\n\r\nThis is my created workspace\r\n[JulianEasterBug.zip](https://github.com/user-attachments/files/17509201/JulianEasterBug.zip)\r\n\r\nWhile
    saving the specification both Tramoseats and X13 seem to expect an EasterVariable
    but receive a JulianEasterVariable and crash with a ClassCastException. So, it
    cannot save Julian Easter correctly.\r\nhttps://github.com/jdemetra/jdplus-main/blob/0d4f5bb28483d01791fc95d86fa773303c45b244/jdplus-main-base/jdplus-tramoseats-base-parent/jdplus-tramoseats-base-core/src/main/java/jdplus/tramoseats/base/core/tramo/TramoFactory.java#L257\r\n\r\nhttps://github.com/jdemetra/jdplus-main/blob/0d4f5bb28483d01791fc95d86fa773303c45b244/jdplus-main-base/jdplus-x13-base-parent/jdplus-x13-base-core/src/main/java/jdplus/x13/base/core/x13/regarima/RegArimaFactory.java#L220"
  - Thanks. I see the problem I will correct it.
  - 'Corrected in #466 '
  author:
  - walkman-w902
  - Immurb
  - palatej
  - palatej
- text:
  - "X11.mode only appear when you have several choices:\r\n- log transformation ->
    multiplicative or log-additive\r\n- no pre-adjustment\r\n\r\nIn all the other
    cases, it is automatically derived from the transformation (fn=auto) or it can't
    be modified (fn=add)\r\n\r\n\r\n"
  - "Thanks @palatej. Then it means that we cannot anymore do a log-additive or pseudo-additive
    decomposition with pre-processing?\r\n"
  - "You can do a log-additive decomposition with pre-processing when logs have been
    chosen (choice between multiplicative or log-additive).\r\nFor the pseudo-additive
    decomposition, you can't indeed use pre-processing."
  author:
  - palatej
  - AQLT
  - palatej
- text:
  - "I just downloaded [jdemetra-standalone-3.3.0-osx-x86_64.zip](https://github.com/jdemetra/jdplus-main/releases/download/v3.3.0/jdemetra-standalone-3.3.0-osx-x86_64.zip)
    and in the `nbdemetra.conf` it says `jdkhome=jdk-21.0.5+11-jre/Contents/Home`\r\nI
    cannot test it personally, but it seems fine config wise."
  - "Maybe I downloaded the wrong zip \U0001F914, I will check it tonight "
  - 'Indeed I was using the wrong release...... Sorry and thanks @Immurb '
  author:
  - Immurb
  - AQLT
  - AQLT
- text: "I will try to give you an explanation for the three specifications:\r\n\r\nDomain
    is the user configured specification, so it can contain automatic procedures,
    e.g. the transform function with auto.\r\nPoint is the \"used\" specification
    with calculated parameters. It is needed for calculating the results in the same
    way after refreshing data JDemetra.\r\nEstimation is only used after a refresh
    with the point specification as start and differs depending on the refresh policy.\r\n\r\nSingle
    documents do not support different policies, so it only contains a domain spec"
  author: Immurb
- text:
  - "I think it's a bug from the GUI.\r\n\r\nWhen you are in the CVS matrix item list,
    try the following steps:\r\n\r\n- remove all the items from the list (with ⇐),
    then validate\r\n- put only the `period` item (with →), then validate\r\n- put
    all the item back (with ⇒), then validate\r\n- try to generate the output"
  - Thanks Tanguy, it works.
  author:
  - TanguyBarthelemy
  - MFatihTuzen
- text: Solved in recent release
  author: charphi
- text:
  - 'Corrected in #427 '
  - Thanks for correcting it @TanguyBarthelemy. Should this issue be closed then?
  author:
  - TanguyBarthelemy
  - a-s-russo
- text: []
  author: []
- text: "The period is the length of a cycle (= number of obs to retrieve the same
    pattern). Usually, it is the annual frequency, but it could be something else
    in high frequency series (for example 7  for a weekly SO in daily series). \r\nTechnically
    speaking, the SO is defined by   ... 0 1 0 ... 0 1  0 ... 0 1 0 0 0 0 0 and the
    1 are separated by (p-1) 0"
  author: palatej
- text:
  - "It is only possible to fix any coefficients in the GUI if the transformation
    is defined (aka not Auto). **We should definitely make it clear for the user,
    by deactivating the option and explaining the cause in the description.**\r\n\r\nSo
    let me answer all the questions:\r\n\r\n- How do I insert a fixed factor?\r\n_First
    set a transformation (Log or None), then set the factor._\r\n- What does 'parameter
    value' in JD+ mean? / Does it refer to 'value' or 'coefficient' as per my definitions?\r\n_It
    is the coefficient and is named that way in TradingDays and User-defined variables.
    **I will change it to be more consistent and specific**._\r\n- Why does the 'parameter
    value' seem to 'disappear' when I reopen the relevant dialogue box? / And why
    does it not appear in the underlying XML file (see screen shot below)?\r\n_If
    no transformation is defined JDemetra changes the 'parameter value' to 0 Undefined
    when closing the box, so, it really disappears._\r\n- If the coefficient is fixed,
    and the value of the fixed coefficient is 0, will JD+ re-estimate it via RegARIMA,
    or will it use a coefficient of 0 (meaning that the outlier in effect is not applied
    to the series)?\r\n_It will use and show it as a fixed outlier with coefficient
    of 0._  "
  - Thanks so much for the helpful answers @Immurb. I appreciate you answering each
    of my questions carefully. That all makes sense. I look forward to having your
    suggestion of making things clearer for the user implemented.
  - "One further thing to add @Immurb: there was a reason for my question regarding
    the meaning of 0 for fixed coefficients:\r\n\r\nIn R, when we look up the documentation
    for the `add_outlier()` function, under `Arguments` it says \"coef: the coefficient
    if needs to be fixed. **If equal to 0 the outliers/ramps coefficients are estimated.**\r\n\r\nWhy
    does the R interface differ to the GUI? It seems that in RJDemetra, a 0 tells
    JD+ to re-estimate, but in the GUI, it doesn't mean that.\r\n\r\nWe're not sure
    why in R the default value of `coef` isn't NULL or NA so that any value given
    to it would indicate a fixed value but if it's NULL/NA then RegARIMA would re-estimate."
  - "I'm not sure why it is implemented that way in R, maybe @TanguyBarthelemy or
    @charphi know.\r\nInternally each Parameter/Coefficient has a value and a type
    (Undefined, Initial, Fixed, Estimated). In the GUI I think you can only choose
    the type for ARIMA parameters, everything else fixes the value.\r\n  "
  - "A few clarifications:\r\n\r\nWe use the same structure for parameters (in ARIMA
    or other models) and for regression coefficients. Not the best choice, but changing
    it would be expensive and error prone. \r\nAt least, we should indeed adapt the
    spec boxes to use the correct names and to hide the coefficients when they can't
    be fixed. The documentation should explain why. I will add it in the issues.\r\n\r\nIn
    the ARIMA model, the different types make sense: you can of course estimate the
    value or fix it, but you can also give an initial value; that is useful when there
    are different local maximum likelihood solutions (different initial values could
    give different final estimates).\r\n\r\nConsidering the coefficients of the regression,
    you just can fix them or estimate them: there is an analytic solution and initial
    values would never be used. That's why given coefficients are always considered
    as fixed. Using 0 doesn't make sense in most cases. The only exception is trading
    days, when you want to exclude the effects of some day(s).\r\n\r\nThe choice of
    the default value in R is indeed misleading. NULL or NA would be better. To be
    noted that 0 is automatically changed in the R code to NULL. -> small improvement
    for the next release (-> issue in rjd3toolkit)\r\n"
  - "Thanks for the clarifications @Immurb and @palatej. Incorporating the suggested
    changes in a future release would be great.\r\n\r\nI agree that a coefficient
    of 0 is pointless in all cases except for the one @palatej has identified. However,
    the GUI treatment is better in my view than the R treatment: the former is helpfully
    consistent regardless of value if type is 'fixed', even if the value is 0. That
    is easier to understand than having 0 mean 're-estimate' as per the R implementation."
  - "I have one more question given the replies above. @Immurb stated that in the
    GUI, the 'type can only be set for ARIMA parameters'. However, @palatej then said
    that for the regression coefficients, 'you just can fix them or estimate them',
    but then goes on to say that they 'are always considered as fixed'.\r\n\r\nI'm
    confused now: are the coefficients for user-defined variables (regressors) always
    fixed, always re-estimated, or can the user choose the type ('fixed', or 're-estimate').
    If so, how (in the GUI)?\r\n\r\nSimilar to LSs and AOs, I can't make sense of
    the corresponding user-defined variable window (even if I choose a non-auto transformation
    as @Immurb advised):\r\n\r\n![image](https://github.com/user-attachments/assets/a273bb7f-78d8-402d-b624-dd064fa44870)"
  - "If you give a value, the coefficient is considered as fixed. Otherwise, it is
    (of course) estimated. \r\n\r\nTo be noted that the treatment of fixed coefficients
    is completely different from usual REGARIMA estimation: fixed regression effects
    are first removed from the series; that's why we must now the transformation of
    the series to interpret it correctly (should they be applied on the series in
    levels or in logs?) . The modified series is then processed and the fixed regression
    effects are finally reintroduced in the results. \r\n\r\nMore details can be retrieve
    in the [documentation ](https://jdemetra-new-documentation.netlify.app/a-sa-pre-treatment)\r\n\r\n"
  - "Hi again @palatej. I have a further question regarding your comment above: _\"If
    you give a value, the coefficient is considered as fixed. Otherwise, it is (of
    course) estimated.\"_\r\n\r\nIn the underlying XML workspace file, what is the
    data item name for coefficients that are estimated rather than fixed when inserting
    outliers in the JD+ GUI like level shifts or additive outliers?\r\n\r\nWhen the
    coefficients are fixed, the tag label is clearly displayed:\r\n\r\n![image](https://github.com/user-attachments/assets/b491134a-8955-4bd0-ac1b-e519db4bfc87)\r\n\r\nHowever,
    what is the tag name for when the coefficient is not fixed? Is it 'Estimated',
    or 'Undefined', or 'Initial', or something else, or does it simply not appear
    in the XML file? **Also**, does the answer depend on whether the workspace file
    is a single document or a multi-document?\r\n\r\nWe're finding it hard to reveal
    the answer through our own experimentation as there seem to be a number of combinations/factors
    at play. Note further that the documentation at: https://jdemetra-new-documentation.netlify.app/a-sa-pre-treatment#outliers
    does not explain the coefficient types for outliers in the GUI (it only explains
    the types for ARIMA models). FYI @annasmyk"
  - "The xml is the same for single or multi-document (more exactly, the xml in a
    single document is an extract of the xml in a multi-document)\r\n\r\nSome general
    rules for the parameters (regression or arima)\r\n- Input parameters (given by
    the user)\r\n   -   \"Fixed\", \"Undefined\", \"Initial\" are reserved to input
    parameters.\r\n   -   \"Estimated\" is considered as \"Undefined\" in inputs (but
    such parameters can be changed in \"Fixed\" parameters if you use suitable refreshing
    policies) \r\n   -   \"Initial\" is only meaningful for arima parameters.\r\n
    \  -   \"Initial\" in regression is considered as \"Undefined \r\n\r\n- Output
    parameters (generated by the processing)\r\n   -  \"Fixed\", \"Estimated\" are
    reserved to output parameters (results of the processing)\r\n   -  \"Fixed\" inputs
    give \"Fixed\" outputs\r\n   -  Other inputs give \"Estimated\" outputs \r\n"
  - Thanks @palatej for your prompt reply. That information has helped to clarify
    the situation for us.
  author:
  - Immurb
  - a-s-russo
  - a-s-russo
  - Immurb
  - palatej
  - a-s-russo
  - a-s-russo
  - palatej
  - a-s-russo
  - palatej
  - a-s-russo
- text:
  - We will implement an option to print the whole name in the columns e.g. arima.q
    and m-statistics.q as specified in the params.
  - Done with https://github.com/jdemetra/jdplus-main/commit/7ab75ada8774baad2864064253a2dd46939d49ba
  author:
  - Immurb
  - Immurb
- text:
  - FYI @Immurb I added some videos to this issue to explain the problem further.
  - Yeah this is definitely a bug. The internal classes change their state successfully,
    but don't communicate it to the UI elements.
  - Fixed in 3.5.0
  author:
  - a-s-russo
  - Immurb
  - charphi
- text: "Thanks for this very helpful description of this problem.\r\nIt seems to
    be an edge case in the calculation of the standard deviation in the B4 step that
    goes out of bound. We will test our solution and then push a fix."
  author: Immurb
- text: 'Solved in #361 '
  author: palatej
- text:
  - "These icons are part of the FlatLaf look&feel used in the NetBeans Platform.\r\nWe
    cannot change these icons easily.\r\nSee https://www.formdev.com/flatlaf/components/splitpane/"
  - "Thanks for explaining @charphi. Based on the link you provided, it seems `SplitPane.dividerSize`
    might help? (Or perhaps that doesn't scale with the arrow icon size, and only
    changes the divider size but not the arrow icon size, as you seem to have pointed
    out to me in your reply.)\r\n\r\nOtherwise, no worries if this is problematic
    to fix.\r\n\r\nNote also that I think this issue is better classified as an 'improvement'
    rather than a 'bug'."
  author:
  - charphi
  - a-s-russo
- text: []
  author: []
- text: Fixed in a recent release
  author: charphi
- text:
  - Should be moved to incubator
  - Solved in incubator v2.2.1
  - Thank you @palatej! I will test it as soon as it will be released.
  author:
  - palatej
  - palatej
  - TanguyBarthelemy
- text: "Examples:\r\n```java\r\n    public final ArrayGridInput VGRID_GAP1 = ArrayGridInput.of(new
    Object[][]{\r\n            {null, null, \"S1\", null},\r\n            {JAN_, null,
    3.14, null},\r\n            {FEB_, null, 4.56, null},\r\n            {MAR_, null,
    7.89, null},\r\n            {null, null, null, null}\r\n    });\r\n\r\n    public
    final ArrayGridInput VGRID_GAP2 = ArrayGridInput.of(new Object[][]{\r\n            {null,
    null, null, null},\r\n            {null, null, \"S1\", null},\r\n            {JAN_,
    null, 3.14, null},\r\n            {FEB_, null, 4.56, null},\r\n            {MAR_,
    null, 7.89, null},\r\n            {null, null, null, null}\r\n    });\r\n\r\n
    \   public final ArrayGridInput VGRID_GAP3 = ArrayGridInput.of(new Object[][]{\r\n
    \           {null, null, \"G1\", null},\r\n            {null, null, \"S1\", null},\r\n
    \           {JAN_, null, 3.14, null},\r\n            {FEB_, null, 4.56, null},\r\n
    \           {MAR_, null, 7.89, null},\r\n            {null, null, null, null}\r\n
    \   });\r\n```"
  author: charphi
- text: []
  author: []
- text: 'Solved in #324 '
  author: palatej
- text: "For reference, I have created an issue at FlatLaf repository to find a better
    solution. \r\nSee https://github.com/JFormDesigner/FlatLaf/issues/849"
  author: charphi
- text: []
  author: []
- text:
  - "It is the same problem in v3 since v2 and v3 use the same library.\r\nIt will
    be solved in the next release of v3."
  - "I just tested the latest snapshot. \r\nIt's resolved, thanks!\r\n_(I shouldn't
    have reopened an issue, but I had a cold sweat)._"
  - Not a problem; I will use this issue in the release notes
  - Done in 795efa71ad87dd845b19c420499557af09b1f180
  author:
  - charphi
  - TanguyBarthelemy
  - charphi
  - charphi
- text:
  - "We discussed yesterday about your issue with @charphi .\r\nThe error is saying
    that your filename doesn't end with a file extension (for example `.xls`, `.xlsx`
    or `.ods`).\r\n\r\nPlease try to change your file extension (by hand or with Excel
    for example) to update your filename."
  - 'I just tried it out and it works perfectly well now. The problem was that the
    file extension never needed to be mentioned in the older versions. I will take
    note of it. With this issue fixed, the new version is ready for production for
    us. Thank you very much. '
  - Good to know!
  - 'Just another question: is it planned to switch the Date format in the Excel output
    back to "General" or will it be kept in the new "Date" Format? just to know if
    I need to adapt my subsequent macros or not, as it used to be in the "General"
    format. Thank you very much in advance. Véronique'
  - "For the Excel output, you have to specify the file extension so that the program
    knows which file format you want to use. This is indeed a behavior change from
    the v2. I'm thinking about two solution for that problem:\r\n- automatically add
    default file extension (implicit solution)\r\n- add a combobox with file format
    (explicit solution)\r\n"
  - "> Just another question: is it planned to switch the Date format in the Excel
    output back to \"General\" or will it be kept in the new \"Date\" Format? just
    to know if I need to adapt my subsequent macros or not, as it used to be in the
    \"General\" format. Thank you very much in advance. Véronique\r\n\r\nThe new \"Date\"
    format is just the Excel date cell type without formatting.\r\nI don't know how
    your macros work but as a cell type, it should be fine. As a string value, that
    will be indeed anoying.\r\nI'm not planning to change the behavior for the time
    being."
  - 'I''ve chosen the implicit solution: automatically add default file extension'
  author:
  - TanguyBarthelemy
  - veroniqueelter
  - TanguyBarthelemy
  - veroniqueelter
  - charphi
  - charphi
  - charphi
- text:
  - "This is the stacktrace I get:\r\n\r\n`java.lang.ArrayIndexOutOfBoundsException:
    Index 1 out of bounds for length 1\r\n\tat internal.toolkit.base.core.math.linearfilters.SymmetricMullerNewtonSolver.update(SymmetricMullerNewtonSolver.java:876)\r\n\tat
    internal.toolkit.base.core.math.linearfilters.SymmetricMullerNewtonSolver.newtonnull(SymmetricMullerNewtonSolver.java:546)\r\n\tat
    internal.toolkit.base.core.math.linearfilters.SymmetricMullerNewtonSolver.factorize(SymmetricMullerNewtonSolver.java:336)\r\n\tat
    internal.toolkit.base.core.math.linearfilters.RobustSymmetricFrequencyResponseDecomposer.decompose(RobustSymmetricFrequencyResponseDecomposer.java:104)\r\n\tat
    internal.toolkit.base.core.math.linearfilters.SymmetricFilterAlgorithms.lambda$robustFactorizer$2(SymmetricFilterAlgorithms.java:92)\r\n\tat
    internal.toolkit.base.core.math.linearfilters.SymmetricFilterAlgorithms.lambda$factorizer$6(SymmetricFilterAlgorithms.java:143)\r\n\tat
    jdplus.toolkit.base.core.math.linearfilters.SymmetricFilter.factorize(SymmetricFilter.java:469)\r\n\tat
    jdplus.toolkit.base.core.arima.ArimaModel.getMa(ArimaModel.java:341)\r\n\tat jdplus.toolkit.base.protobuf.modelling.ModellingProtosUtility.convert(ModellingProtosUtility.java:243)\r\n\tat
    jdplus.toolkit.base.r.arima.UcarimaModels.toBuffer(UcarimaModels.java:154)`"
  - 'That''s a numerical issue in some limit cases. Corrected in #321 '
  author:
  - Immurb
  - palatej
- text:
  - I was not able to reproduce the problem. Don't forget to save your changes to
    the saprocessing (through the apply/restore/save) buttons. That "save" doesn't
    save the workspace, but only put your new specifications in the current document.
  - "Hi @palatej. Thanks for investigating this issue further.\r\n\r\nI believe this
    issue I have reported is indeed a bug (unless the behaviour is intended), because
    I do not experience the problem with other parameters in either the Variables
    dialogue box or the Specifications panel. Furthermore, when I inspect the underlying
    XML file for the workspace, I can see the relevant tag has been updated for the
    regression effect parameter when I use the workaround I mention above. This suggests
    the workspace has indeed changed, hence it should be saveable when this parameter
    is changed.\r\n\r\nFor example, if I change the 'Lag' setting for a user-defined
    variable, click OK in the Variables dialogue box, then click Apply in the Specifications
    panel, the 'Save Workspace' in the File menu is clickable:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/10fb495b-4965-4b4c-ba97-3a3af478e133)\r\n\r\nThe
    same works for every other option in the Variables dialogue box, except for the
    'Regression effect' option. If that option alone is changed and no others are
    changed, then even clicking on Ok and then Apply does not activate the 'Save Workspace'
    option."
  - "I can't reproduce the problem either.\r\nWhen I change the `Regression effect`,
    press `Apply` and then `Save`, the `Save Workspace` button is no longer greyed
    out and is available and I can save my WS."
  - 'Thanks @TanguyBarthelemy  for trying to replicate the bug. I have included a
    screen recording demonstrating the issue for me. In the first part of the recording,
    I show that changing other seasonal adjustment parameters can be successfully
    saved, and in the latter part of the recording, I show that this is not possible
    when changing the `Regression effect`. The recording can be extracted from this
    ZIP file: [screen_recording.zip](https://github.com/user-attachments/files/16154116/screen_recording.zip)'
  - "Thanks a lot.\r\nI see the problem now (it seems that it doesn't happen in multi-processing)."
  - "Yes I thought too!\r\n\r\nYesterday I tested with Multi-Processing instead of
    a single document. I can confirm that I'm reproducing the problem now."
  - Thanks @palatej and @TanguyBarthelemy. I am glad to hear you can now reproduce
    the bug. I should have stated that I was using a single document rather than multi-processing
    document when first reporting this problem, but it is strange that it only impacts
    one and not the other! Looking forward to the bug fix.
  - Already done. An unfortunate small optimization...Will be in 3.2.3
  author:
  - palatej
  - a-s-russo
  - TanguyBarthelemy
  - a-s-russo
  - palatej
  - TanguyBarthelemy
  - a-s-russo
  - palatej
- text:
  - "To focus on the difference between V2 and V3 (because there are normally no difference
    with the cruncher), I filled in a file with the possible outputs in v2 and v3:
    \r\n[Difference_output_GUI_v2_v3.xlsx](https://github.com/user-attachments/files/16660115/Difference_output_GUI_v2_v3.xlsx)\r\n\r\nThere
    are different missing fields and we would be interested in recovering the missing
    diagnostics in v3 (diagnostics.basic   checks.definition:2, diagnostics.basic
    checks.annual totals:2, ...).\r\n\r\nIs it possible ?\r\n"
  - This issue is too general. I'm going to open up smaller, more specific issues
    to move things forward.
  author:
  - TanguyBarthelemy
  - TanguyBarthelemy
- text: []
  author: []
- text:
  - Add a contextual menu to copy description column to name column
  - "![Screenshot 2024-06-07 140312](https://github.com/jdemetra/jdplus-main/assets/8778378/74fcb051-646d-427f-9905-32b03e1b7a63)\r\n"
  author:
  - charphi
  - charphi
- text:
  - Same as https://github.com/jdemetra/jdplus-main/issues/179 ?
  - 'Solved in #324 '
  author:
  - charphi
  - palatej
- text:
  - "Hi Corentin, \r\n\r\nYou need to first select a specification:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/e34faf05-a083-4aa3-8816-2b12a919ea6e)\r\n\r\nThen
    you can drop your series:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/edb2d697-9d52-40e2-b57d-b3f46eb8b9f9)\r\n\r\nBut
    compared with v2, even if you have selected a specification, you **can't drop**
    series from a grid to a SA-Processing:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/a6238d18-6fc2-49d3-8d4b-190aafb315af)\r\n\r\nAlso,
    you can select a specification by default in `Tools` --> `Options`:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/e6037161-07fb-4182-88a2-e6dabc001b13)\r\n\r\nThen
    `SA` --> `Seasonal Adjustment` --> `Default method` then you can choose your default
    specification( TramoSeats or X13):\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/4d0a8272-fb31-44b6-97f3-443ad51ff117)\r\n\r\nSo
    you can now drop your data (from `Providers`) to a SA-Processing without specifying
    a specification each time."
  - I like this new behaviour because then the user doesn't get a suggestion for X13
    or TramoSeats. I suggest to close this issue.
  - "I agree too. It can be misleading for the user not to have to define a spec and
    receive TramoSeats by default...\r\nFor me the issue can be closed."
  author:
  - TanguyBarthelemy
  - ChristianeHofer
  - TanguyBarthelemy
- text:
  - "Hi @ashah12 \r\n\r\nJWsaCruncher is a command-line tool. It is not designed to
    run as a AWS lambda function.\r\nIt might still work but you will have to create
    some kind of wrapper around it (maybe it is what you are already doing).\r\n\r\nConcerning
    your specific error, the message means that JD+ has not been able to load the
    service provider that deals with `Utilities@Calendars` workspace item. I'm not
    familiar with AWS lambda function, so I'm not sure where the problem is.\r\nIt
    might come from a missing jar or a missing entry in the jar if the content has
    been modified or repackaged.\r\n\r\nService providers are loaded by the [Java
    ServiceLoader](https://www.baeldung.com/java-spi). On the classpath, these providers
    are registered in `META-INF/services` folders. On module path, these providers
    are registered in `module-info.java`.\r\n"
  - Thank you for your help!
  - "Hi,\r\nI'm trying to figure our where the service provider configuration files
    are defined. There don't seem to be any META-INF directory in the jdplus-main
    repo. \r\n\r\nI am trying to create an executable jar, which includes the jdplus
    dependencies. However when I do this, the only service providers that the jar
    sees are:\r\njdplus.sa.base.workspace.SaHandlers$SaMulti@49e4cb85\r\njdplus.sa.base.workspace.SaHandlers$SaMultiLegacy@5594a1b5\r\n\r\nany
    ideas?"
  - "@bezdomniy Service provider configuration files are automatically generated at
    compile time thanks to nice annotations (see [`@ServiceProvider`](https://github.com/nbbrd/java-service-util?tab=readme-ov-file#serviceprovider)).\r\n\r\nFor
    your executable jar, you might need to shade your dependencies using the [`maven-shade-plugin`](https://maven.apache.org/plugins/maven-shade-plugin/).
    You will have to use a transformer in order to shade the providers.\r\nhttps://github.com/jdemetra/jdplus-main/blob/ddf9ce62f5f89bdd957cac10f03017e01db141f8/jdplus-main-cli/pom.xml#L73\r\n"
  - "This was the solution for the Calendars issue as well! \U0001F60A"
  author:
  - charphi
  - ashah12
  - bezdomniy
  - charphi
  - ashah12
- text: Cannot reproduce the problem !?
  author: charphi
- text: Duplicate of https://github.com/jdemetra/jdplus-main/issues/291
  author: charphi
- text: Done in 7109ae4b47ff09ce73facf4d982e9d308f870f72
  author: charphi
- text:
  - "Indeed you can import a quaterly time series and choose to import it as a monthly
    series.\r\n\r\nMy file:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/fca9c5d1-5078-45ff-b42b-e1f10920fe54)\r\n\r\nChoose
    frequency monthly:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/952bd4e1-fbf5-4448-b3aa-c74b0af799fb)\r\n\r\nThe
    date appears as monthly data:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/8f6aa671-952b-4297-a01b-3716e8d34da5)\r\n"
  - "@annasmyk @TanguyBarthelemy \r\n\r\n> There are only two hard things in Computer
    Science: cache invalidation and naming things.\r\n> -- Phil Karlton\r\n\r\nWhat
    about ...\r\n- Expected Frequency\r\n- Forced Frequency\r\n- Intended Frequency\r\n-
    Unified Frequency\r\n"
  - I prefer forced frequency
  author:
  - TanguyBarthelemy
  - charphi
  - palatej
- text: 'done in #341 '
  author: palatej
- text: Done in https://github.com/jdemetra/jdplus-main/pull/375
  author: charphi
- text:
  - "Is this resolved? I just tested the SNAPSHOT of the v3.2.3 and I still get some
    `+` in the path:\r\n![image](https://github.com/jdemetra/jdplus-main/assets/112711017/d7325b7f-8fe9-4be4-bc82-40c6911647c0)\r\n"
  - I don't have the problem. Try do create a new workspace from scratch. Maybe it
    is just old URI from previous version.
  - "I downloaded the latest snapshot from this morning and now it works!\r\nMaybe
    I tested with a too old snapshot..."
  author:
  - TanguyBarthelemy
  - charphi
  - TanguyBarthelemy
- text: []
  author: []
- text:
  - "![image](https://github.com/jdemetra/jdplus-main/assets/8778378/501c9a0b-5c26-4887-ab17-76a0e125ec3f)\r\n"
  - Fixed in 88049f80c13c1cca0052c81c5667224fd715bb02
  author:
  - charphi
  - charphi
- text:
  - "Here is a screenshot for reference:\r\n\r\n![2024-05-28 11_50_42-Window](https://github.com/jdemetra/jdplus-main/assets/8778378/61067f1c-3a89-4522-bf17-ac2e92d29f25)\r\n"
  - "Hi @Immurb. Thanks for attending to this ticket. I've attempted to verify this
    fix using the 3.2.3 snapshot you refer to above, but I'm not sure the fix is working
    as intended. In version 3.2.2 with the bug present, I could copy a spec and have
    it appear, but then it would not open/delete etc. as explained above:\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/43d74812-cd03-4b9f-b907-b107647122c6)\r\n\r\nHowever,
    with version 3.2.3 that supposedly incorporates the bug fix, when I click on 'Copy
    spec. to workspace', nothing happens (that is, I do not see a 'X13Doc-2' document
    in the list):\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/291169c8-40aa-4be8-888a-9a41e12a041d)\r\n\r\nIs
    this the intended behaviour, or has the fixed not been implemented correctly?\r\n\r\nThe
    daily snapshot version I used to test the bug fix is below. Please let me know
    if this was the incorrect version to have used.\r\n\r\n![image](https://github.com/jdemetra/jdplus-main/assets/110582146/df6fa395-385f-4aaf-ba52-2320ea60a70b)"
  - "The bug existed because the action created a document, in your case X13Doc-2,
    but internally it was a specification item. Now it creates a specification as
    the text suggests.\r\nThe copied specification should be created under \"specifications\"
    instead of \"documents\" as was the case in version 2."
  - Hi @Immurb. Thanks for your prompt reply, and sorry for my delayed response. I
    understand now how the copying spec functionality is supposed to work. I have
    tested it and indeed it works as intended.
  author:
  - charphi
  - a-s-russo
  - Immurb
  - a-s-russo
- text: Done in 173382f0347128fe9fe981709ed64b0c962405df
  author: charphi
- text: 'Thanks. Corrected in #214 '
  author: palatej
- text: "![Screenshot 2024-06-07 160801](https://github.com/jdemetra/jdplus-main/assets/8778378/55b73812-5578-4de3-85b4-0b394740cebd)\r\n"
  author: charphi
- text:
  - Note that I can export the SI chart. After running X13 and viewing the 'Main results'
    for a series, it is possible to export the SI chart via the clipboard to another
    application, but the SA + T chart cannot be exported.
  - "Thanks for submitting this issue. It has been fixed in 79ad189734ad53244594c30d66df701242faff0a.\r\nYou
    can already test it in the JD+ daily builds at https://github.com/nbbrd/jdemetra-app-snapshot/"
  author:
  - a-s-russo
  - charphi
- text: Fixed in 1a7a9c05947687ab2197afb5be62d36210c4d0c7
  author: charphi
- text: Done in 054223f0542b566e239f17a5fbec856bd7afc661
  author: charphi
- text: Fixed in 28b2686e0c93d28d7be591f401017715f5399f8d
  author: charphi
- text: Added in 3.2.2
  author: palatej
- text: I think it is a bug.
  author: ChristianeHofer
- text: 'Solved in #341 '
  author: palatej
- text:
  - "I found the following CVS-output to be confusing:\r\ndecomposition_d_tables_d10
    and decomposition_d_tables_d10a are both available to be choosen, but in the final
    output only decomposition_d_tables_d10 is explicitly in the file. The forecasts
    from decomposition_d_tables_d10a are added to the decomposition_d_tables_d10 series
    without explicit note."
  - "Related problems:\r\nhttps://github.com/jdemetra/jwsacruncher/issues/13\r\nhttps://github.com/jdemetra/jdplus-main/issues/136"
  - 'Done in #948'
  author:
  - ClaudiaFries
  - charphi
  - charphi
- text:
  - 'NetBeans 20 supports JDK21: https://github.com/apache/netbeans/releases/tag/20'
  - |
    Some update:
    - Java 25 (LTS) has been released
    - JDemetra+ release is bundled with Java 21
    - Java version on CRAN is no more an issue
  - Hi @charphi, does this mean that JDemetra+ now requires Java version 21 or higher
    and no longer requires 17?
  - Yes, indeed, you need Java 21+ to build and run it.
  - OK thank you!
  author:
  - charphi
  - charphi
  - TanguyBarthelemy
  - charphi
  - TanguyBarthelemy
- text:
  - This principle is called "reduced precision" (see https://en.wikipedia.org/wiki/ISO_8601#Reduced_precision)
  - "**TL;DR**: Classes that allow compact notation implement the `HasShortStringRepresentation`
    interface. These short representations are not necessarily the shortest one as
    readability and meaning are the main objectives.\n\n## ISO 8601 Time Interval\n\nIn
    JD+, time intervals must implement the `TimeInterval` interface and may implement
    `HasShortStringRepresentation` if a compact notation is possible. \n\nExample
    using `TsPeriod` ($${\\color{green}start\\color{black}/\\color{blue}duration}$$):\n\n|
    Method | Output |\n| --- | --- |\n| `TsPeriod#toString()` | `2010-01-01T00:00:00/P1M`
    |\n| `TsPeriod#toShortString()` | `2010-01/P1M` |\n\n## ISO 8601 Time Recurrence\n\nIn
    JD+, time recurrence must implement the `TimeRecurrence` interface and may implement
    `HasShortStringRepresentation` if a compact notation is possible.\n\nExample using
    `TsDomain` ($${R\\color{green}n\\color{black}/\\color{blue}interval}$$):\n\n|
    Method | Output |\n| --- | --- |\n| `TsDomain#toString()` | `R24/2010-01-01T00:00:00/P1M`
    |\n| `TsDomain#toShortString()` | `R24/2010-01/P1M` |\n\n## Experimental extension
    of ISO 8601\n\nIn JD+, observations can also be represented by a string. This
    experimental notation is not part of the ISO 8601 standard but is heavily inspired
    by it.\n\nExample using `TsObs` ($${\\color{green}interval\\color{black}=\\color{blue}value}$$):\n\n|
    Method | Output |\n| --- | --- |\n| `TsObs#toString()` | `2010-01-01T00:00:00/P1M=3.14`
    |\n| `TsObs#toShortString()` | `2010-01/P1M=3.14` |\n"
  - Done in https://github.com/jdemetra/jdplus-main/pull/668
  author:
  - charphi
  - charphi
  - charphi
- text:
  - Are you referring to batch output or series "Save to" feature ?
  - I'm referring to the export functionality of a multi-document. When I select `csv`
    and presentation `VTable` the dates are in the format `2002-01-01T00:00:00/P1M`.
    I've just noticed that when I select `Htable` they are in the format `2002-01-01`.
  - This looks like a bug. I'm going to check...
  - Fixed in 82b0ac452f06e25c46b0d674b3bee0e48a8b43d3
  author:
  - charphi
  - AQLT
  - charphi
  - charphi
- text:
  - I need some more information. Are you talking about the desktop application or
    the command-line tool?
  - I'm talking about the desktop application. When I go to `Providers > Txt files
    >  Open` we cannot change the decimal separator (same as in the previous versions).
    However I would find it useful to be able to do this. Using a French computer,
    when I export data from JDemetra+ the decimal separator used is the comma. To
    import it again in the desktop application I have to modify the csv file by hand.
  - "In fact, you can change the decimal separator by selecting the corresponding
    locale:\r\n![2023-11-15 10_21_27-JDemetra+ 3 1 1](https://github.com/jdemetra/jdplus-main/assets/8778378/6b4f9358-88a3-41eb-840c-ac0ecc3f95d9)\r\n"
  - Awesome! I didn't know this setting was for that. Thanks!
  author:
  - charphi
  - AQLT
  - charphi
  - AQLT
- text:
  - Seem to be fixed in 3.2.2.
  - Ondées.
  - 'Indeed (sorry : the error corrector is awful)'
  author:
  - ChristianeHofer
  - palatej
  - palatej
- text:
  - "This option also does not work for me:\r\n\r\n![screenshot](https://github.com/jdemetra/jdplus-main/assets/110582146/2e892917-6b26-4576-896f-c253078dd31c)\r\n"
  - Fixed in 7ab47ee165a9530fade1f3f9091f7dd2485b5b92
  - "Thanks for fixing this @charphi. However, I would like to note the following:\r\n\r\n-
    In version 3.2.1, the 'Split into yearly components' option is available by default
    when right-clicking on a graph. However, as reported in this issue, clicking on
    it does not nothing. Note further that if you first select 'Select all' after
    right-clicking, then select 'Split into yearly components', still nothing happens.\r\n-
    In version 3.2.2-SNAPSHOT however, when right-clicking on a graph, the option
    'Split into yearly components' does not appear. It only appears *after* selecting
    the 'Select all' option from the context menu. However, why is it necessary to
    click on 'Select all' to enable the splitting of the graph into yearly components?
    Shouldn't this option assume by default that 'Select all' has already been chosen?
    What does 'Select all' even achieve? How can you even select only a portion of
    the graph rather than all of it?"
  - '@a-s-russo : I have added a new issue to simplify the usage of these actions.
    See https://github.com/jdemetra/jdplus-main/issues/247'
  - 'Thanks for this @charphi. Good to see this issue fleshed out in #247.'
  author:
  - a-s-russo
  - charphi
  - a-s-russo
  - charphi
  - a-s-russo
- text:
  - "Maybe `arima.getParametersCount()` should be replaced by `regarima.getVariablesCount()`because
    it also don't take into account the regressors variables. I think the hyperparameters
    should also be modified in `TradingDaysTest.java`:\r\nhttps://github.com/jdemetra/jdplus-main/blob/7aeb4a7fa15225af4f1371fe48fde49faf28ce7a/jdplus-main-base/jdplus-toolkit-base-parent/jdplus-toolkit-base-core/src/main/java/jdplus/toolkit/base/core/modelling/regular/tests/TradingDaysTest.java#L110\r\nIt
    would also explain why we cannot reproduce the residual trading tests in R (https://github.com/rjdemetra/rjd3x13/issues/13)."
  - "Hi Alain, \r\n\r\nYou can see in the Java code of the class JointTest (https://github.com/jdemetra/jdplus-main/blob/develop/jdplus-main-base/jdplus-toolkit-base-parent/jdplus-toolkit-base-core/src/main/java/jdplus/toolkit/base/core/stats/linearmodel/JointTest.java)
    that we take into account the number of regression variables (include the trend
    mean) for computing the degrees of freedom. So, I think that the code is correct."
  - "Hi Jean,\r\nThank you for your answer. You are surely right for SarimaTradingDaysTest.java,
    the problem seems to come from elsewhere I will open an issue in rjd3toolkit.\r\nFor
    TradingDaysTest.java there still are some differences with the results of `rjd3toolkit::td_f()`
    function (e.g. with the degree of freedom), is it intentional?\r\n``` r\r\nlibrary(rJava)\r\nlibrary(rjd3toolkit)\r\ny
    <- ABS$X0.2.09.10.M\r\ntdtest <- J(\"jdplus.toolkit.base.core.modelling.regular.tests.TradingDaysTest\")\r\ntestjd
    <- rjd3toolkit:::.jd2r_test(tdtest$maTest(rjd3toolkit:::.r2jd_tsdata(y), FALSE))\r\ntest_rjd3
    <- td_f(y, \"R011\")\r\nattr(testjd, \"distribution\")\r\n#> [1] \"F with 6.0
    degrees of freedom in the nominator and 418.0 degrees of freedom in the denominator\"\r\nattr(test_rjd3,
    \"distribution\")\r\n#> [1] \"F with 6.0 degrees of freedom in the nominator and
    417.0 degrees of freedom in the denominator\"\r\n\r\ntestjd <- rjd3toolkit:::.jd2r_test(tdtest$maTest(rjd3toolkit:::.r2jd_tsdata(y),
    TRUE))\r\ntest_rjd3 <- td_f(y, \"AIRLINE\")\r\nattr(testjd, \"distribution\")\r\n#>
    [1] \"F with 6.0 degrees of freedom in the nominator and 406.0 degrees of freedom
    in the denominator\"\r\nattr(test_rjd3, \"distribution\")\r\n#> [1] \"F with 6.0
    degrees of freedom in the nominator and 404.0 degrees of freedom in the denominator\"\r\n```"
  - 'Ok. I see the difference: in td_f, I correct the df for the number of parameters
    in the model (Tramo-like) and in the other case, I don''t correct (X12-like).
    I will use the same approach (tramo-like) to get the same results.'
  author:
  - AQLT
  - palatej
  - AQLT
  - palatej
- text:
  - "There is indeed a bug when removing a star.\r\nHowever, the error on your screenshot
    is unrelated."
  - "\U0001F627\U0001F60C"
  - Done in ef941f78813345655281db6b7af12d9fb525cdaf
  author:
  - charphi
  - TanguyBarthelemy
  - charphi
- text: "XLSX files and CSV files are read by two different TS providers.\r\nTheir
    IDs are their own and are not necessary related.\r\n\r\nWe can argue about which
    method is the best but the current way is an historical one:\r\nwe try to keep
    the IDs compatible between versions so we can migrate workspaces.\r\n"
  author: charphi
- text:
  - "I don't think this issue has been fully resolved. Knowing that the .cfgx format
    ~~is unused and obsolete~~ is not compatible with R packages and is not human-readable..
    \n\nIs it possible to add XML import and export methods (as for the functions
    from {rjd3workspace} `x13_write_spec` and `x13_read_spec`) directly in the GUI?\n"
  - What do you mean by "the .cfgx format is unused and obsolete"?
  - Yes, it was a bit crude (and wrong). I've edited it.
  - "The cfgx files the UI creates are in essence just compressed xml files, you can
    try opening it with a file archiver and find the specification encoded inside
    another xml (with some additional information for the workspace). \n\nEdit: To
    answer your question, yes it would be possible to add buttons to directly import
    xml files of specifications.  "
  - |-
    Ok, I didn't know for .cfgx files and .xml files
    Ok for the button, it would be great!
  - Same thing for Variables and Calendars
  author:
  - TanguyBarthelemy
  - Immurb
  - TanguyBarthelemy
  - Immurb
  - TanguyBarthelemy
  - TanguyBarthelemy
- text:
  - "This is the \"With\" pattern.\r\n\r\n`SaItem` is an immutable object. That means
    that its state cannot be changed once it is created.\r\nSo, to change a parameter,
    you need to create a new object by deriving the original one. \r\n\r\nMore info
    at https://projectlombok.org/features/With"
  - Thank you
  author:
  - charphi
  - TanguyBarthelemy
- text:
  - "These are two different-yet-related patterns.\r\nUsually, a class has either
    a builder or a public constructor but not both.\r\nBasically, you use a contructor
    if you have few parameters and a builder if you a a lot of parameters.\r\n\r\nTo
    get started with these concepts, I would recommend the following book:\r\nhttps://www.oreilly.com/library/view/effective-java-3rd/9780134686097/"
  - "Ok, thank you for the explanation!\r\n"
  author:
  - charphi
  - TanguyBarthelemy
- text:
  - "There is indeed a numerical problem (the stdev of the parameters are based on
    a numerical approximation of the hessian of the likelihood; in same cases, it
    can degenrate)\r\nCould you send me the data, please.\r\nThank you in advance "
  - "Ok. I see the problem. The model contains a unit root (-1) in the AR polynomial.
    I will add a test to avoid such a case.\r\nThanks !\r\n "
  author:
  - palatej
  - palatej
- text: Fixed in 3.2.2
  author: ChristianeHofer
- text:
  - "That part of the code is dependent of your regional settings.\r\nIt is done by
    design to mimic the behavior of JD+ v2 but might change in the future with new
    parameters in UI.\r\n\r\nThe test currently fails on your computer but the runtime
    should work."
  - "I fixed the tests in 24925427532dbcddd5769a5b8235bb0a334ee288\r\nCould you try
    on your computer?"
  - Thanks now, now the test is running :-)
  author:
  - charphi
  - charphi
  - ChristianeHofer

