Commit Graph

109 Commits

Author SHA1 Message Date
Marc Bernard
e716fd6437
Fix "duplicate file error" during pull (#5968) 2023-01-03 15:00:56 +01:00
Marc Bernard
68ff24c9fc
Prevent pull in case of duplicate files (#5952) 2022-12-26 10:12:50 +01:00
Marc Bernard
323dfbd235
Reorg: Package hierarchy (#5946)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-12-15 12:07:02 -05:00
Marc Bernard
8a0c93e92f
ENHO: Fix error deserializing enhancements (#5943) 2022-12-14 21:18:17 -05:00
Christian Günter
97f357f107
Set transport request in local repo settings or user exit (#5916) 2022-12-08 08:45:16 -05:00
Marc Bernard
258e6488b4
Fix file to object mapping (#5902)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-12-01 09:03:47 +01:00
Marc Bernard
f8ac419f29
Fix "Unexpected package naming" error (#5805)
* Fix "Unexpected package naming" error

Previously, when an object existed in the repo and locally but was *not* included in the package hierarchy of the repository, you would get the following error (when opening the repo):

...

With this PR, log messages will list all objects that are not included in the package hierarchy. When pulling, the popup will show these objects and ask for confirmation to overwrite. I added an icon and description to the "package overwrite" popup similar to the "object selection" popup.

Closes #5728

* Update unit tests

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-11-04 08:56:31 -04:00
Marc Bernard
b03a70228f
Improve error message for where-used list update (#5849)
* Improve error message for where-used list update

* Update zcl_abapgit_objects_activation.clas.abap
2022-11-02 09:35:57 -04:00
Marc Bernard
34c07b6f98
Avoid overwriting built-in functions (#5832) 2022-10-20 16:45:31 +02:00
Albert Mink
27bec52c8a
AFF with namespaces (#5779) 2022-10-10 11:38:47 -04:00
Christian Günter
ee4320db6b
fix language dependent unit test (#5799)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-10-04 09:06:41 -04:00
Marc Bernard
471b155bc4
SUSH,SUSC: Fix deletion (#5748) 2022-09-09 14:24:52 +02:00
Lars Hvam
9ce3b76d54
refactor call to 'TR_READ_NAMESPACE (#5693) 2022-07-25 10:29:43 +02:00
Albert Mink
0bf8388a6e
Use sy-uname instead cl_abap_syst->get_user_name (#5685) 2022-07-13 09:13:41 +02:00
Marc Bernard
bdfe982ee8
Improve package / sub-package check (#5628)
If a sub-package is removed from the package hierarchy, instead of an exception, abapGit now shows a detailed warning message in the log.

This allows to remedy the situation either by adding the sub-package to the package hierarchy or by removing the sub-package from the repository (via push).
2022-07-12 11:14:02 +02:00
Marc Bernard
d427c6cfe7
Skipping serialization for ignored objects (#5648)
* Skipping serialization for ignored objects 

Serialization now evaluates the ignore list and skips matching objects. Note: The match is using the ABAP `cp` operator.

Example:
```
*ztest.prog.*         Ignore individual program
*.ectd.*                 Ignore all objects of a given type
*/subpack/*           Ignore all objects in a sub-package
```
2022-07-01 08:16:44 +02:00
Marc Bernard
787bc605b0
Propagate codepage conversion errors (#5638) 2022-06-23 07:12:25 +02:00
Marc Bernard
e149594dae
Refactor: is_active logic (#5557)
- Move `is_active` from `zcl_abapgit_objects_super` to `zcl_abapgit_objects_activation`
- Consolidate `is_ddic_type` logic
- Add unit tests for `zcl_abapgit_objects_activation`
2022-05-29 09:47:39 +02:00
Fabian Lupa
288e1008dd
Fix object deletions not working (#5594)
Package is now required for CLAS deletion for RS_CORR_INSERT but was not correctly determined for object deletions because of different field names when using MOVE-CORRESPONDING and another missing assignment.

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-05-28 16:52:33 +02:00
Marc Bernard
5ae7f618f3
Repo view: Source system for packages/namespace (#5587)
Follow-up to #5514
2022-05-23 15:30:11 +02:00
NicolasBusson
a8ecd8fb77
Fix dump ASSERTION_FAILED during table content deserialization (#5586)
* Data import: fix dump ITAB_DUPLICATE_KEY

System dumps during serialization of customizing table comprizing of include structures. Example: WCFC_GIL_COMPROP.

* Fix error "Object type TABU is not supported"

* Fix date format incorrect during serialization

* Fix /data/ serialization package issue

* Commit table content after deserialization

* Cleaning some code

* Rollback code change concerning /data/ folder

Doesn't seem to be necessary in the end...

* Renamed variable <tab> to <lt_tab>

* Fix ASSERTION_FAILED table content deserialization

Issue https://github.com/abapGit/abapGit/issues/5585

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-23 10:35:19 +02:00
Marc Bernard
7258fdc315
Repo view: Show icon for different source system (#5514)
In case an objects originates from a different system (`<> sy-sysid`), an icon will be shown after the object. On hover, you can see the id of the original system. 

Closes https://github.com/abapGit/abapGit/issues/3865
2022-05-21 08:13:41 +02:00
Marc Bernard
3a27ff760f
Uninstall: Fix order for dependencies (#5559)
- Set order for uninstalling `WEBI`, `SPRX`, `IOBJ`, `ODSO`, and `PINF`
2022-05-19 11:03:58 +02:00
Marc Bernard
eaeba0f1cb
Fix syntax error in systems with BW (#5572)
abapGit should support systems without SAP_BW component. Therefore, references to BW data types have to be replaced by generic types and BW classes have to be replaced by dynamic calls.

Follow-up to #5556

Closes #5565
2022-05-18 22:10:38 +02:00
Marc Bernard
13b12e6087
Improve error handling during activation phase (#5506)
When the "Activation Popup" is turned off in "Personal Settings", any errors during activation will lead to "Activation cancelled. Check the inactive objects" which is not very helpful.

The change will add the errors to the abapGit log. 

It will also handle the special case when activation of includes leads to error "Include is used in multiple main programs" (EU 404). In such case, you can turn on the activation popup and repeat the abapGit process successfully.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-07 09:29:19 +02:00
Marc Bernard
78c4b37666
Fix status calculation (#5500)
Regression #5427

Closes https://github.com/abapGit/abapGit/issues/5499
2022-04-29 11:58:55 +02:00
Marc Bernard
183fff654a
Fix syntax error in BW jump (#5498)
* Fix syntax error in BW jump

* Lint
2022-04-29 11:12:03 +02:00
Marc Bernard
43b0d95335
IOBJ, ODSO: Add jump (#5495)
* IOBJ, ODSO: Add jump

Support navigation to BW objects

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-29 08:38:12 +02:00
Marc Bernard
dd85924244
Properly ignore files during deserialize (#5427)
* Properly ignore files during deserialize

Closes #5426

This moves the ignore logic from `zcl_abapgit_files_status->prepare_remote` to an option of `zcl_abapgit_repo->get_files_remote`. Deserialize can then ignore the files already when getting them via `get_files_remote`.

PS: Required for https://github.com/exercism/abap/pull/82

* Update zcl_abapgit_repo.clas.abap

* Update zcl_abapgit_repo.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
2022-04-26 16:52:19 +02:00
Alexander Tsybulsky
2cc3f53fc5
Rework checksums (#5328) 2022-04-13 11:29:23 +02:00
Marc Bernard
583d215114
Add paramter iv_show_log to serialize package (#5457)
Pass along paramter `iv_show_log`(should have been an "unused variable/parameter" check).
2022-04-08 15:43:48 +02:00
Marc Bernard
f712eb17a5
Folder logic "mixed" (#5413)
* Folder logic "mixed"

Introduces a new folder logic named `mixed` which combines `prefix` and `full`. The root package name will be used as prefix for all sub-packages but the package names are *not* concatenated recursively. This will allow for using significantly logic package names.

Also includes several new unit tests especially for nested packages which had not been tested before.

Closes #5410

Todo: Update docs

* Add constant

* Add options to UI

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-03-31 13:35:34 +02:00
Marc Bernard
ba09c6e92d
DDLX: Delete before DDLS (#5414)
Fix order of deletion
2022-03-29 23:28:41 +02:00
Marc Bernard
ab19fec80b
Fix deserialize order (#5399)
* Fix deserialize order

Fix order for 
- CLAS, INTF, XSLT
- IASP, IARP, IATU

* iaxu
2022-03-16 11:38:46 +01:00
Alexandr Razinkin
353f748bd6
Don't fail if a dictionary object is activated with warnings (#5362)
* Fix proposal for issue #5347: added support for 'TYPE REF TO DATA' DDIC data elements as components in DDIC structures

* Fix proposal for issue #5347. Added support for 'REF TO DATA' DTEL DDIC element residing in DDIC structure

* Fix proposal for issue #5347, added support for 'TYPE REF TO DATA' DDIC data element residing in DDIC data structurees

* REF TO DATA for DDIC element support (#5347)

* No error if ddic type has warning (abapGit#5361) during import

* Update zcl_abapgit_objects_activation.clas.abap

* Fix for (abapGit#5361). Warnings during DDIC objects activation shouldn't be considered as error but will be shown as 'yellow' messages after activation

* Fix for (#5361).
Warnings during DDIC objects activation shouldn't be considered as error but will be shown as 'yellow' messages after activation

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-02-20 11:39:09 +01:00
Marc Bernard
92b583bb18
Improve progress bar and log for pull (#5311)
- Eliminate flashing of progress bar during deserialize
- Updated description for deserialize steps
- Add steps to log (see below)

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-02-14 08:25:27 +01:00
Marc Bernard
b5b252744d
Detect JSON files during pull (#5313) 2022-02-02 14:24:38 -05:00
Marc Bernard
ce31e33688
Refactor: Activation log (#5302)
* Refactor: Activation log

- Merges the activation log into the regular pull log
- Removes duplicate messages

* Update

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-02-01 15:24:35 +01:00
Marc Bernard
6efaa0e0b4
Refactor: Remove ddic flag (#5295)
Closes #5264

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-30 16:37:56 +01:00
Marc Bernard
927587880f
Remove UI dependency from test (#5298) 2022-01-30 16:34:20 +01:00
Marc Bernard
5e3e5b60e4
Fix status for new sub-packages (#5278) 2022-01-22 08:57:08 +01:00
Marc Bernard
1a31eb3f2f
Correct task name parallel processing (#5269)
When serializing objects in parallel threads, it can happen that there are not sufficient system resources available (free dialog processes). In this case, abapGit can run into error "RFC task <task name> already open". This is caused by reusing the same task name in subsequent tries to serialize an object.

The correction appends a sequential number to the previous task name so each try will result in a unique task name.

Closes #5224.

PS: This does not fix any resource issues but should prevent the error. It will lead to wait situations and longer processing, however.
2022-01-14 11:47:47 +01:00
Lars Hvam
d7db1e3079
add unit test xslt_before_prog (#5268)
ref #5262
2022-01-13 09:32:39 +01:00
Marc Bernard
53bd8c3fe5
Don't include XML when serializing AFF (#5254)
* Don't include XML when serializing AFF

Avoids output of metadata XML when serialized object contains JSON (ABAP file format).

Preparation for #5126

PS: Contains new and updated unit tests

* Rename is_json_metadata

* CP

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-12 16:54:33 +01:00
Marc Bernard
074ae5a69b
Refactor: Calling batch input (#5252)
* Refactor: Calling batch input

Standardizes calling batch input API and handling errors.

* Fix indent

* Add new window

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-10 09:27:17 +01:00
Frank Müller
b67c06dc2d
Pre Filter Backend Logic (#5226)
* Repo, Repo Online, File Status

* Stage Logic

* Adjustments

* abaplint

* abaplint

* abaplint

* diff between eclipse and vscode

* Centralisation and reuse

* Filter at Get Remote Files instead of Set

* Split Backend And GUI Logic

* abaplint

* abaplint

* Filter Unit Tests

* Missing ,

* remove own type for trobj_name

* Multiple Adjustments

* Rename ZCL_ABAPGIT_REPO_PRE_FILTER to ..._TR

* abaplint

* Replace BAPI_MSG by STRING

* Rename Pre Filter to Object Filter

* Rename Pre Filter also in abap_transpile.json

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-04 07:35:57 +01:00
Lars Hvam
fd401956b8
Refactoring: Prioritization/sequence of deserialization (#5198) 2022-01-03 10:55:06 +01:00
Lars Hvam
7d5d1cabca
file status, bugfix (#5220)
closes #5219
2021-12-14 11:56:26 -05:00
Marc Bernard
c7e4af3be2
Add user exit for serialize postprocessing (#5194)
There are scenarios where you want to serialize objects differently than abapGit. This exit is called at the end of the serialize process and gives an opportunity to change the content of the serialzed files.

One such scenario would be to automatically pretty-print code. This can be achieved by looping over all `.abap` files and processing them accordingly in this exit.

Closes #5050

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-11 07:30:50 +01:00
Lars Hvam
97d8723b6f
prioritize_deser, add unit tests (#5193)
* prioritize_deser, add unit tests

* more tests

* change to string

* update to latest npm packages, and more unit test
2021-12-10 13:46:32 -05:00