Commit Graph

1168 Commits

Author SHA1 Message Date
Christian Günter
5af8cf8862
AFF: Downport (#5679)
* AFF: Downport

* fix lint
2022-07-06 17:15:42 +02:00
Albert Mink
96cd546c7e
[AFF] Get data for serialization from the DB (#5670)
* [AFF] Get data for serialization from the DB

This is definitely not 7.02 syntax.

Contributes to #5658

* is this 7.02 syntax?

* WIP: inlide data declaration

* declare locale variable FIELD-SYMBOL

* multiple statements -> line break; local variable

* one more FIELD0-SYMBOL

* fix redundant `this`

* WIP: streamline data types

* WIP: streamline data types and typos

* add const to abaplint config

* rm commended code line

* add const to abaplint config

* WIP: SELECT follows 7.02 syntax

* space before dot

* WIP: SELECT 7.02

* linter constants

* WIP: finish SELECT 7.02

* Update src/objects/zcl_abapgit_object_intf.clas.locals_imp.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* add ci/abaplint CONST

* more CONST to ci/abaplint

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2022-07-05 08:54:47 +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
Albert Mink
89090b5c00
[AFF] Allow object handler to serialize JSON via experimental feature (#5660)
* [AFF] Object handler for INTF

* Add JSON handler

* hard coded language

* adopt to abapLint rules

* wip: abaplint

* wip: abapLint

* adjust to naming conventions

* AJSON filtering abapLanguageVersion for serializat

* SELECT 7.02; UPPER

* abapLint params

* filter/remove the empty arrays

* reset obj handler to origin/main

* add experimental feature to enable AFF serializati

* typos, indentation and more

* move code to local clas

* Update src/objects/zcl_abapgit_object_intf.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-06-30 16:06:55 +02:00
Albert Mink
eb2ae98c6d
[Refac] Object handler for INTF (serialize) (#5668) 2022-06-30 11:51:41 +02:00
Marc Bernard
01297df9a5
Avoid duplicate key error (#5663)
Follow-up #5652

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-06-29 14:39:10 +02:00
Katharina Wurz
a9f7562d82
Change type assignment (#5661)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-06-27 13:16:34 +02:00
Christian Günter
bfdbee9990
SSST: Suppress list output for warnings (#5666)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-06-27 13:09:38 +02:00
Christian Günter
d145837d96
DDLX: implement changed_by (#5655)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-06-27 10:15:44 +02:00
Albert Mink
b667532004
[AFF] Add the type for INTF (manually) (#5639)
* [AFF] Add the types for INTF manually

* Add the types

* [AFF] JSON handler based on AJSON: deserialize

Minimal example in UT.
UT is RED, since AJSON does not yet match the ST behavior

// the change might be cherry-picked when AFF types are provided in abapGit

* Revert "[AFF] JSON handler based on AJSON: deserialize"

This reverts commit 149d2a86c3.

* Update zif_abapgit_aff_intf_v1.intf.xml

* Update zif_abapgit_aff_oo_types_v1.intf.xml

* Update zif_abapgit_aff_types_v1.intf.xml

* BOM

* Update zif_abapgit_aff_oo_types_v1.intf.xml

* Update zif_abapgit_aff_types_v1.intf.xml

* [abaplint] skip folder aff_types

* Revert "[abaplint] skip folder aff_types"

This reverts commit f63b601a3d.

* [abaplint] exclude aff_types for unused check

* mv AFF types to src/objects/aff_types

* Update zif_abapgit_aff_oo_types_v1.intf.xml

* Update zif_abapgit_aff_types_v1.intf.xml

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-06-27 08:59:34 +02:00
yellappam
ef29fa7411
Clear IWVB metadata fields (#5647)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-06-23 13:16:20 +02:00
Marc Bernard
787bc605b0
Propagate codepage conversion errors (#5638) 2022-06-23 07:12:25 +02:00
yellappam
c63cc7a9d2
Clear IWPR and IWSV metadata fields (#5637)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-06-21 13:05:31 +02:00
yellappam
402c970b5e
Clear IWOM/IWMO object metadata (#5635)
* Clear IWOM/IWMO object metadata

It clears metadata related to object types IWOM and IWMO

* change keyword 'value' to upper case
2022-06-21 11:04:55 +02:00
Alexander Tsybulsky
380508d72c
FUGR: Better maintenance view auto comments cleanups (#5622) 2022-06-13 12:00:09 +02:00
Marc Bernard
6e5f41277f
W3xx: Replace call with TADIR_INSERT (#5618) 2022-06-06 07:48:10 +02:00
Marc Bernard
7ba88d4345
Remove aliases - Common AFF (#5619)
Continue #5580
2022-06-05 21:45:38 +02:00
Marc Bernard
bb13a1ff10
Add exceptions to TR_TADIR_INTERFACE (#5617)
Better support for debugging
2022-06-05 21:29:04 +02:00
Marc Bernard
2415a5c0c0
SOTR: Fix uninstall (#5558)
After all OTR usage has been removed, uninstall will now also delete the TADIR entry for SOTR. This is necessary in order to delete the corresponding package.
2022-06-04 13:41:50 +02:00
Marc Bernard
0ab3ee0a06
Remove aliases from object classes (#5588) 2022-06-04 10:33:42 +02:00
Marc Bernard
c88e1aba5d
AFF: Fix exception handling (#5609)
Catch exceptions when calling `TADIR` deletion

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-06-02 10:06:01 +02:00
Marc Bernard
380f297bc7
DSYS: Fix exceptions (#5608)
Replace exceptions with correct names
2022-06-01 11:18:22 +02:00
Marc Bernard
1a394ff173
INTF: Remove syntax warning (#5607)
Replaces with exception with parent
2022-06-01 10:33:57 +02:00
Fabian Lupa
799334dfe2
Add exposure to workflow class attributes (#5603)
* Add exposure to workflow class attributes

* Add constant seoc_state_implemented to abaplint

* Also add seoc_state_implemented to ci/abaplint

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-31 20:33:17 +02:00
Marc Bernard
a0bd3a903c
INTF: Add to deletion transport and fix locking (#5562)
- Add object to transport on deletion
- Unlock object (proxy interface) in case of errors
2022-05-31 17:42:58 +02:00
Gregor Wolf
276ad4e808
Exclude technical language from intf, clas, prog, dtel, doma and tabl (#5598)
* exclude technical language from DOMA

* exclude technical language from DTEL

* exclude technical language from TABL

* exclude technical language from CLAS

* exclude technical language from PROG

* exclude technical language from INTF

* fix abaplint issue: Place pragma at end of statem.

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-05-30 12:18:32 +02:00
Christian Günter
5e7cf0b27e
LXE: Downport (#5597)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-30 10:12:26 +02:00
Fabian Lupa
cbaf3711b4
Exclude technical languages (#5601)
from get_installed_languages in lxe_texts
2022-05-29 14:50:28 +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
Gregor Wolf
143f7d4d3b
fix: exclude Translation Object Detective language for MSAG objects (#5596)
* fix: exclude Translation Object Detective language

Excludes Translation Object Detective language from serialization
Provides a solution for object type MSAG in issue #5595

* fix: Contains non 7 bit ascii character

* fix: exclude also Pseudo Translation

* refactoring based on the PR suggestion

* fix abaplint issues

* fix further abaplint issues
2022-05-28 12:00:15 +02:00
Marc Bernard
ca5023c6d0
CLAS: Add to deletion transport (#5563)
Fix missing transport entry
2022-05-23 18:16:22 +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
97631dd2fe
SICF: Display object name in upper case (#5547)
Align case of object name with other object types
2022-05-21 08:39:38 +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
6a84341a27
PINF: Fix error when changing packages (#5560)
- Set parent package for package interface elements
- Raise error in case of mismatched packages
2022-05-19 10:47:15 +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
Lars Hvam
9f048abeff
CHAR: take only serialize main language into accou (#5566)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-05-18 18:04:40 +02:00
Marc Bernard
38f99380da
FDT0: Add check of local/transportable apps (#5561)
It's not possible to import local apps into transportable packages or vice versa. The check raises corresponding error messages (and avoids a slew of cryptic errors you would get otherwise).

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-18 15:04:01 +02:00
Marc Bernard
1af60a9f42
SSFO: Avoid side-effect in is_active (#5564) 2022-05-18 14:37:53 +02:00
Marc Bernard
5802f0df37
CHDO: Fix deletion of TADIR entries (#5555)
Test mode needs to be set explicitly to false.
2022-05-16 08:26:18 +02:00
Marc Bernard
ff0fc72891
IOBJ/ODSO: Fix errors if objects exist already (#5551)
Implementation worked only for new objects (argh)

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-11 12:38:20 +02:00
Marc Bernard
b0a31b0e3b
IAxx: Fix locking of objects (#5545)
Fixes missing locking and unlocking of `IARP`, `IASP`, and `IATU` (other `IAxx` objects are ok)

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-11 09:45:56 +02:00
Marc Bernard
d4a69e160a
SHI3: Fix exists check (#5546)
Skip buffer and read object status from DB
2022-05-10 12:03:51 +02:00
Marc Bernard
db91c9bb08
ASFC,SPLO,SPPF: Fix missing transport entry (#5541)
In certain cases, the default transport set by abapGit does not work and there's no API to pass the transport for the object type. Therefore, we need to set the transport via ABAP memory (similar to setting the default package).

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-09 08:11:49 +02:00
Marc Bernard
5127bfdb9d
DDIC: Improve active/inactive check (#5486)
* DDIC: Improve active/inactive check

Use `is_active_ddic` (function `DDIF_STATE_GET`) for all DDIC object types. This is more accurate than the current method (function `RS_INACTIVE_OBJECTS_WARNING`) since it detects newly created but not active objects as well.

* Fix const

* Remove "no active version" error

* Update comment

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-09 08:08:32 +02:00
Marc Bernard
a96fed4b26
ENHC: Fix diffs due to OTR (#5538)
`cl_enh_composite` already handles OTR shorttext and there's no need to use `zcl_abapgit_sotr_handler`.

Update test case:
https://github.com/abapGit-tests/ENHC

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-07 10:04:14 +02:00
Marc Bernard
882a64cb68
UDMO: Fix wrong parameter value (#5540)
* UDMO: Fix wrong parameter value and exceptions

- `mode` is char 1
- fix exception overlap

* subrc

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-07 09:49:15 +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
Lars Hvam
f0b3c96474
Align pragma style (#5535) 2022-05-07 09:08:34 +02:00
Marc Bernard
2af39232e6
AVAS,CHDO,DDLS,SPRX: Add objects to transport (#5542) 2022-05-06 12:39:47 +02:00
Marc Bernard
d993a081fa
AMSD: Fix "Step DDIC is only for DDIC objects" (#5539)
AMSD is not supported by mass activation. Assigns AMSD to "Step ABAP"
2022-05-06 12:10:36 +02:00
Lars Hvam
5a5630c198
update to latest npm packages (#5501)
* update to latest npm packages

* update

* update abaplint config to latest
2022-05-06 09:10:03 +02:00
Christian Günter
497b432199
OTGR: Downport (#5532)
* OTGR: Downport

* fix lint
2022-05-04 13:08:44 +02:00
Marc Bernard
6524d2fcee
UENO: Clear/fill user, date, and time fields (#5520)
Apply clear/fill rules to user and time-specific fields

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-04 09:31:49 +02:00
Marc Bernard
d35e3548d8
OTGR: Fix errors with parent/child (#5518)
- Fix "error while instantiating CL_CLS_OBJECT_TYPE_GROUP"
- Remove children since they are created automatically
2022-05-04 09:26:48 +02:00
Marc Bernard
9ba5db8497
WDYN: Add documentation and fix diffs (#5490)
- Add documentation for Web Dynpro component and controllers
- Fix diffs of view components due to missing sort
- Updated https://github.com/abapGit-tests/WDYN

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-04 09:03:02 +02:00
Marc Bernard
e049144e87
SPRX: Add objects to transport (#5521)
- Add proxy to transport in deserialize
- Add objects to transport in delete

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-03 07:01:57 +02:00
Marc Bernard
5ac80b0316
G4BA,G4BS: Clear/fill user and timestamp fields (#5519) 2022-05-03 06:48:43 +02:00
Marc Bernard
375092c370
DEVC: Clean-up OTR entries (#5507)
Uninstalling objects like `ENHC` just removes their references to OTR entries (`sotr_use/u` tables). Therefore, when the package is uninstalled, the remaining OTR entries will be completely removed.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-05-01 12:18:08 +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
2bc6e2a8ff
SOTR: Refactor (#5441) 2022-04-29 08:51:17 +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
0306a11ddc
Add "Changed by" to several objects (#5493)
* Add "Changed by" to several objects

Complete todos: ENSC, TRAN, TYPE, VCLS, XINX

* Lint
2022-04-27 07:28:32 +02:00
Marc Bernard
252101ea8c
SPRX: Fix suppress_dialog error (#5491)
On old support package levels, `suppress_dialog` parameter does not exit
2022-04-26 17:24:28 +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
yellappam
e50a7dcc3c
Clear metadata fields (#5464)
* Add zcl_abapgit_rule and zif_abapgit_rule

* Insert clear and fill logic

* Pass rule to the generic serializer in IWSG class

* Remove extra space

* Remove inline declaration

* Format the code

* Replace CHECK with IF

* Rename class/interface

* Multiple changes

Rename method name
Change method signature
Remove clear field

* loop over all fields of given fields

* Align method call parameters

* Remove class reference for member

* Use string template to convert to type

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-04-26 16:33:21 +02:00
sandraros
b3c89a8ff2
Create empty classes/interfaces before DDIC (#5393)
* Force XSLT activation during deserialize

* Revert "Force XSLT activation during deserialize"

This reverts commit 7d6fc64ddb.

* Create empty class/interface before DDIC phase

Fix #5392

* pretty printer ZCL_ABAPGIT_OBJECT_INTF

* abaplint zcl_abapgit_object_clas

* Update zcl_abapgit_object_clas.clas.abap

* Update zcl_abapgit_object_dtel.clas.abap

* Update zcl_abapgit_object_intf.clas.abap

* Update zcl_abapgit_object_tabl.clas.abap

* Update zcl_abapgit_object_ttyp.clas.abap

* Update zcl_abapgit_objects.clas.abap

* Update zcl_abapgit_object_clas.clas.abap

* Update zcl_abapgit_object_intf.clas.abap

* Update zif_abapgit_object.intf.abap

* Update src/objects/zcl_abapgit_object_intf.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Update order numbers

Co-authored-by: sandraros <sandra.rossi@gmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-26 16:07:15 +02:00
BeckerWdf
9974246775
DTDCs no longer have an own data class (#5478)
Starting with ABAP Platform 2208 DTDC does no longer have an own workbench data class but instead uses CL_BLUE_SOURCE_OBJECT_DATA directly.

In addition:
The field that carries the ABAP language version changed from ABAP_LANGUAGE_VERSION to ABAP_LANGU_VERSION in ABAP Platform 2208. So to make it work in both releases < and >= ABAP Platform 2208 we have to try to clear both versions of that field.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-04-26 16:02:09 +02:00
Marc Bernard
df2c88223a
FUGR: Fix diff of includes (#5489)
Sort list of includes to avoid diff
2022-04-26 14:40:20 +02:00
BeckerWdf
adfcedc7cb
DDLX: clear ABAP_LANGU_VERSION 2022-04-20 07:49:26 +02:00
BeckerWdf
497ad94180
DDLS: clear ABAP_LANGU_VERSION 2022-04-20 07:39:32 +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
e6378ac17f
DEVC: Fix DYNPRO_SEND_IN_BACKGROUND (#5461)
When deserializing SAP packages that do not exist in background, AG will dump with `DYNPRO_SEND_IN_BACKGROUND`. This is caused by a popup asking for the transport.

Fixed by passing the transport to the save method.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-08 11:33:18 +02:00
Marc Bernard
62443633fd
Improve LXE error handling (#5440)
* Improve LXE error handling

Raise exception in case of error messages

* Remove space

Co-authored-by: Lars Hvam <larshp@hotmail.com>

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-06 10:48:58 +02:00
Marc Bernard
00e1505613
DEVC: Raise error for main/structure packages (#5444)
* DEVC: Raise error for main/structure packages

Main or structure package and cannot be used in local packages (`$...`). 

abapGit will now raise an error, if one tries to pull main or structure packages into a local package.

* Split into two messages

* Locally

* Local

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-06 09:17:09 +02:00
Marc Bernard
8d8d537fcf
DOMA: Deletion of domains with append (#5445)
* DOMA: Deletion of domains with append

On newer releases, suppressing the confirmation popup does not work since the parameter has changed.

Added a call using the new parameter.

* No if

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-05 18:00:27 +02:00
Marc Bernard
250feae861
Add transport for deletions in generic serializer (#5434)
Closes #5421

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-05 16:41:03 +02:00
Marc Bernard
3574521d2d
Record objects in transports (#5435)
* Record objects in transports

Follow-up to #5419

* Record objects in transports

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-05 16:26:07 +02:00
Marc Bernard
287539ed4a
CHDO: Avoid double pull and fix uninstall (#5439)
Change documents left a diff when pulled once that would go away after second pull. In debugging warning CD 763 could be seen "No TADIR entry found'. The `tadir` entry is now created properly.

Uninstall would fail with "Function group ... does not exist". Reason was that the function group was already deleted by `chdo` object. The deletion of such generated function groups is now skipped.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-05 16:04:14 +02:00
Christian Günter
e0742e5181
CUS1: fix jump (#5447) 2022-04-05 10:31:04 +02:00
Marc Bernard
3666dda767
Rename methods returning boolean (#5436)
Just a bit of Clean ABAP:
https://github.com/SAP/styleguides/blob/main/clean-abap/CleanABAP.md#use-nouns-for-classes-and-verbs-for-methods

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-03 10:40:12 +02:00
Marc Bernard
3d158a3fbc
DDLS: Avoid dump and show error (#5437)
* DDLS: Avoid dump and show error

Ref https://github.com/abapGit/abapGit/issues/4624

* Typo
2022-04-03 10:10:58 +02:00
Marc Bernard
453c430723
Deserialize textpool for some objects (#5417)
* Deserialize textpool for some objects

Fixes inserting the textpool for objects that are not handled by `RPY_PROGRAM_INSERT`. This applies for example to function groups and exit includes (`zx...`).

* Fix deserialize_textpool

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-04-01 17:51:32 +02:00
Marc Bernard
014d40db1c
Fix "dynpro_send_in_background" (#5430)
* Fix "dynpro_send_in_background"

Suppresses dialog processes for ENHC, ENHS, ENSC, SPRX, and TRAN.

Closes #5420

* Update zcl_abapgit_object_enho.clas.abap

* Update zcl_abapgit_object_enhs.clas.abap

* Update zcl_abapgit_object_ensc.clas.abap

* Update zcl_abapgit_object_sprx.clas.abap

* Update zcl_abapgit_object_tran.clas.abap

* exit
2022-04-01 17:40:28 +02:00
Marc Bernard
485bb12cc1
Record objects in transports (#5419)
CI tests have shown that several object types are not properly recorded in transports. For some objects there was no transport entry when creating the objects, for others when deleting it. 

This PR add the necessary calls to `corr_insert()`. 

(some SE80 reorders)

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-03-31 15:20:25 +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
6e927e63c5
UENO: Fix diff related to release (#5422) 2022-03-31 06:48:57 +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
Marc Bernard
c88dc9f216
SRVB: Fix uncaught exception (#5398)
Fixes dumps due to uncaught exceptions and gives proper error message
2022-03-15 18:43:04 +01:00
ThomasPloski
38db43ce13
Update zcl_abapgit_object_srvd.clas.abap (#5395)
* Update zcl_abapgit_object_srvd.clas.abap

* Update src/objects/zcl_abapgit_object_srvd.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2022-03-10 08:44:30 +01:00
yellappam
bcdeebb3ad
Sort internal tables (#5390)
Function module WEBI_GET_OBJECT returns several internal tables. Sometimes, the sorting order of these internal tables is different in each system ex: S/4HANA and non-S/4HANA. This fixes #5389.
2022-03-02 14:37:23 +01:00
Marc Bernard
524f6eebc5
CLAS/INTF: Fix serialize/deserialize of documentation (#5374)
* INTF: Fix serialize/deserialize of documentation

Documentation of interfaces (document class IF) was missing and has been added.

* Fix translations
2022-02-28 14:25:52 +01:00
sandraros
0f6267688e
Fix pull/activate table type ref to data type (#5384)
Fix #5383

Co-authored-by: sandraros <sandra.rossi@gmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-02-27 17:45:29 +01:00
sandraros
5e53bb9626
Fix DDIC errors related to ref to class/interface (#5369) 2022-02-27 17:23:13 +01:00
Marc Bernard
a491dcf875
SOTS: Fix dump in case of lower case language code (#5381)
Closes #5380
2022-02-25 10:02:33 +01:00
sandraros
68e2cfa5c2
Fix data elem type ref to class in same repository (#5370)
* Fix data elem type ref to class in same repository

* simpler solution by testing refkind and reftype

Co-authored-by: sandraros <sandra.rossi@gmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-02-21 17:20:39 +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
Christian Günter
2ba6151355
JUMP: Switch execution order - first specific then generic (#5357)
* Switch jump order

* fix DDLS

* fix SHI3
2022-02-18 05:48:36 +01:00
Alexandr Razinkin
256007685e
DTEL: REF TO DATA for DDIC element support (#5350) 2022-02-15 07:39:27 +01:00
yellappam
1246e2718f
Sort includes (#5352)
In some systems, function modules RS_GET_ALL_INCLUDES returns an include *T00. Where *T00 include is not returned, abapGit adds to the internal table. This results in different sorting order in different systems. Sort to keep the same order.
2022-02-15 06:37:58 +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
Shyam Balachandran
371b1d4137
Fix for Service Binding issue #5212 (#5344)
Fix for SRVB (Service Binding) is lost in version 1.113.0 #5212

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-02-11 16:58:28 +01:00
Lars Hvam
09936744e9
SICF, clear ICFALIASNO (#5338) 2022-02-10 11:58:12 +01:00
Albert Mink
9ddad8b559
CHKO et al.: Raise if deleting TADIR fails (#5337)
This behavior will be defined centrally in #5263. But for now, just raise if something with the TADIR fails.
2022-02-08 09:34:11 +01:00
Albert Mink
8c2840e517
fix type for the dynamic calls (#5333)
fixes #5332
2022-02-07 12:05:56 -05:00
Albert Mink
d79a38eec2
Enable AFF to delete TADIR entries (#5326)
* Enable AFF to delete TADIR entries

* AbapLint policy I

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* AbapLine policy II

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* AbapLint policy III

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* AbapLint policy IV

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* AbapLint policy V

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* AbapLint XY

* don't call AFF for trivial tasks

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2022-02-07 10:12:44 +01:00
Marc Bernard
b5b252744d
Detect JSON files during pull (#5313) 2022-02-02 14:24:38 -05:00
Albert Mink
a18d7542e7
CHKO et al.: Do write TADIR entry (#5320) 2022-02-02 14:12:16 -05:00
Albert Mink
fee5c18761
Deserialize active when calling ABAP file formats (#5319) 2022-02-02 14:08:54 -05:00
Marc Bernard
631132736d
UI: Center Popups - Part (#5315)
Adjusting more popups #5275
2022-02-02 07:35:02 +01:00
Marc Bernard
ec9ff1a29f
TABL: Properly show inactive objects (#5303)
* TABL: Properly show inactive objects

Current `is_active` check is insufficient for DDIC objects and can't detect "new" or "partically active" objects.

Introduces a new `is_active_ddic` method in `zcl_abapgit_objects_super` which should be used by all DDIC types (follow-up). 

Ref #5294

* Update zcl_abapgit_objects.clas.abap

* Update
2022-02-01 16:11:18 +01: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
a828d80044
DOMA: Fix serialize of translations (#5304)
Closes #5296

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-02-01 14:36:31 +01:00
DerGuteWolf
6da51326b1
WAPA: Fix repeated pull of BSP page (Fiori) (#5310)
* Fix for #5179 Do not mess with mo_files during deserialize

* style fix
2022-02-01 13:38:44 +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
fd167aa13b
Avoid double deserialize of text symbols (#5273)
* Avoid double deserialize of text symbols

Text symbols are already deserialized in `ZCL_ABAPGIT_OBJECTS_PROGRAM->DESERIALIZE_TEXTPOOL`.

* remove method

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-24 14:16:50 +01:00
Marc Bernard
5e3e5b60e4
Fix status for new sub-packages (#5278) 2022-01-22 08:57:08 +01:00
NicoleG
b7b867c3ac
AIFC additional interface validation checks (#5267) 2022-01-18 10:38:08 +01:00
Albert Mink
c83060f366
CHKO object calling AFF Framework (#5163) 2022-01-18 10:23:10 +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
Fabian Lupa
be8a0062f8
Use transport parameter in ENHO+SFPF (#5258)
* objects: use provided Transport in deserialization of ENHO+SFPF

I have been working on RFC enabled functions modules for executing
abapGit operations and I found out that transported objects of type ENHO
and SFPF cannot be pulled over my RFC methods because the specified
transport was not used.

This commit simply takes over the approach from other objects where
we already read the transport number.

For SFPF, I had to add "darkmode" which was missing and which is
necessary to avoid any dialogues.

I am not sure if there are other objects with the same problem, so
I might be posting similar patches in future.

* Downport #5199

* Fix indentation

* Always pass transport in SFPF

Co-authored-by: Jakub Filak <jakub.filak@sap.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2022-01-10 10:21:34 +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
Lars Hvam
c3b9980486
replace XUBNAME with SYUNAME (#5248) 2022-01-06 08:18:45 +01:00
Frederik Hudák
faab3bb0b0
TOBJ - fix xslt serialization dump (#5247) 2022-01-04 17:06:54 +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
Marc Bernard
2eaaff7ad9
Adjust usage of transport in object classes (#5218)
After #5216

Replaces `zcl_abapgit_default_transport=>get_instance( )->get( )` logic with `iv_transport` for the following object types:
`AMSD, BDEF, DRUL, DTDC, FDT0, FUGR, INTF, PROG, SQSC, SRVB, SRVD, WDCA`

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2022-01-03 10:50:53 +01:00
Marc Bernard
35f18c57d9
Pass transport to object classes (#5216)
Adds transport number for `zif_abapgit_object~deserialize` and `zif_abapgit_object~delete` to pass the transport number to the object classes.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-20 18:47:10 +01:00
Marc Bernard
089e04d7e4
W3xx: Avoid diffs of parameters (#5231)
It's possible that systems return parameters unsorted causing diffs. Sorting the parameters will avoid this.
2021-12-19 14:43:23 -05:00
NicoleG
c23357f22f
AIFC - Enablement of AIFC development object for AIF content in abapgit (#5197) 2021-12-18 14:51:21 +01:00
Lars Hvam
7d5d1cabca
file status, bugfix (#5220)
closes #5219
2021-12-14 11:56:26 -05:00
Fabian Lupa
dc51247e9b
Always use active version for DOCU CL (#5201)
* Always use active version for DOCU CL

* CLAS/INTF delete documentation on pull

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-14 06:36:00 +01:00
Marc Bernard
5bcdbce3b8
DDLX/SMTG: Raise exception (#5217)
Change to `raise_with_text`
2021-12-14 03:54:13 +01: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
manhofmann
a637caf864
performance optimization parallel mode (#5187)
* performance optimization parallel mode

in parallel mode a new session is created for each object to be serialized. method IS_TYPE_SUPPORTED is called in each new session with only one object type. however all objects are loaded via method SUPPORTED_LIST. this change implements a specific cache for method IS_TYPE_SUPPORTED.

* Update src/objects/zcl_abapgit_objects.clas.abap

Co-authored-by: Christian Günter <christianguenter@googlemail.com>

* moved type defintion to PRIVATE SECTION

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
2021-12-09 06:58:58 +01:00
Marc Bernard
b46c8b4599
Refactor: Consolidate front-end classes (#5172)
* Refactor: Consolidate front-end classes

There's no need for two "front-end classes". Moves all of ZCL_ABAPGIT_GUI_FUNCTIONS to ZCL_ABAPGIT_FRONTEND_SERVICES. Now all front-end calls are nicely together.

No functional change, some method reordering. 

Ref #2510, #5145

* Add missing interface

Co-authored-by: Christian Günter <christianguenter@googlemail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-12-09 06:49:43 +01:00
Marc Bernard
9e629475dc
Fix dump ASSERTION_FAILED (#5190)
"Exists check" might be called for objects without `TADIR` entry (like `NSPC`). 

Regression of #4952 which removed the "if"

a72d3314cb (diff-4a3135e0f538157951fefdea06986dc644f6005a2af7f6917ff7f7f2f771f622L299)
2021-12-08 20:50:37 -05:00
Christian Günter
451ab7cadf
WebGUI: Disable jump (#5184)
Co-authored-by: Christian Günter <christian.guenter@emineo.ch>
2021-12-06 16:13:24 -05:00
Marc Bernard
3fa3323b2e
Refactor: Jump to Object Logic (#5158)
* Refactor: Jump to Object Logic

Continue #5114

- Removes jump_adt and jump_se11 from zcl_abapgit_objects_super
- Remove almost all object-specific jump handlers (zif_abapgit_object~jump) since they are covered by GUI Jumper now

* Remove ZCL_ABAPGIT_OBJECT_SICF

* Remove obsolete RS_TOOL_ACCESS

* FUGR

* IATU

* PDXX

* SRVD

* XINX

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
2021-11-29 15:52:13 -05:00
Shyam Balachandran
9aa0dd154e
SRVB: Service Binding object changes (#4976)
* Fix issue 3443

Service Binding(SRVB) object changes

* Correcting abap lint findings

* Correcting abaplint findings 2

* Update zcl_abapgit_object_srvb.clas.abap

Changes to serialize and exists methods

* Update zcl_abapgit_object_srvb.clas.abap

Correct serialize and exists method

* Update zcl_abapgit_object_srvb.clas.abap

abapgit lint fixes

* Update zcl_abapgit_object_srvb.clas.abap

- Correcting exists method based on feedback
- Removing incorrect DDIC options for SRVB

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-11-26 08:06:50 +01:00
Marc Bernard
4ecbc30a2e
Add DRUL and DTDC to mass activation (#5156)
* Add DRUL and DTDC to mass activation

DDIC mass activation supports Dependency Rules (DRUL) and Dynamic Cache (DTDC) object

* Len

* Update abap_transpile.json
2021-11-22 13:30:19 -05:00
Alexander Tsybulsky
a671bb8dc3
Expand TABL includes before PUT (#5153) 2021-11-22 12:57:38 -05:00
Lars Hvam
4301d3e8c8
no chained assignment (#5140)
* no chained assignment

* bugfix
2021-11-19 16:19:27 +01:00
Frank Müller
6d02555f96
Check that include belongs to the same fugr (#5134)
* Check that include belongs to the same fugr

* abaplint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-15 16:50:44 +01:00
Marc Bernard
53951dc2ad
Remove more unused variables (#5112)
* Remove more unused variables

* rm

* rm

* rm

* rm

* needed for refactor later

* rm

* Needed for callback

* rm

* rm

* Pragma

* rm enho

* rm

* rm

* Setting unused_variables

* Revert unused_variables setting

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-09 16:22:29 +01:00
Marc Bernard
285fbb21ff
SHI3: Set buffer mode (#5115)
Activates buffer mode for menus (same logic as in function BMENU_CREATE_TREE). 

Closes #5077

Co-authored-by: Alexander Tsybulsky <sbcgua@users.noreply.github.com>
2021-11-09 04:33:21 +01:00
Marc Bernard
ebf397b0f0
Fix regression for ADT Jump (#5120)
* Fix regression for ADT Jump

Regression from #5114 . Closes #5119
2021-11-07 14:53:53 -05:00
Marc Bernard
a37cf58e01
Refactor: Jump to Object Logic (#5114)
* Refactor: Jump to Object Logic

The goal is to greatly simplify the code to jump to an object, and to separate UI and object layers some more.

This PR introduces GUI Jumper (`zcl/if_abapgit_gui_jumper`), which covers all generic options to show an object. It tries the following options in order:
- ADT (if enabled)
- Workbench with line number
- Workbench without line number
- Transport System (new)

Only if all fail, abapGit will call the object-specific handler. 

Next steps:

- Remove `jump_adt` and `jump_se11` from `zcl_abapgit_objects_super` and replace by GUI Jumper
- Remove almost all object-specific jump handler since they are covered by GUI Jumper now

* Add class

* Lint

* Misleading name
2021-11-07 08:15:08 +01:00
Frank Müller
1ed9ca21e9
Performance Optimization with Namespace (#5097) 2021-11-05 05:35:36 +01:00
Christian Günter
53343a98d6
Files: Introduce secondary keys (#5101)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-05 05:32:39 +01:00
Marc Bernard
3da00146b7
WEBI: Fix changed_by, is_active, exists (#5106)
* WEBI: Last changed by

* Update zcl_abapgit_object_webi.clas.abap
2021-11-05 05:27:59 +01:00
Marc Bernard
0e6a46e076
SUSH: Fix check for lock (#5093)
* SUSH: Fix check for lock

* Error handling
2021-11-03 04:57:40 +01:00
Alexander Tsybulsky
412b61b9b9
strip FUGR generator comments (#5076)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-11-02 15:20:45 -04:00
Alexander Tsybulsky
d103d2fb2e
Remove obsolete screens on PROG deserialize (#5075)
* Remove obsolete screens on PROG deserialize

* remove commented code

* align RS_SCRP_DELETE params

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-02 14:58:02 -04:00
Alexander Tsybulsky
c0ad1a96d0
Better multi-lang class tpool handling (#5074)
* better multilang class tpool handling

* dont save lang list on empty clas docu

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-02 06:10:03 +01:00
Derby
53ddddb8e3
bug in zcl_abapgit_file_status->check_namespace (#5069)
Fix regular expression

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-11-01 14:57:06 -04:00
Marc Bernard
a3e598ac1f
FUGR/PROG: Keep field text in case of masking (#5072)
* FUGR/PROG: Keep field text in case of masking

If masking is used with a dynpro field, then the text (mask) must not be cleared.

Closes #5071
2021-10-29 11:30:00 -04:00
Marc Bernard
45806c5a95
Refactor serializer class (#4994)
* Refactor serializer class

- Consolidate i18n parameters
- Move determination of translation languages into serializer class
- Pass translation language setting when parallel processing (was a bug)

* Lint

* Add unit tests

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-25 16:01:40 +02:00
g-back
1e5befc44a
Decouple cl_gui_frontend_services (#5046)
* add additional methods

* fix whitespace

* add parameter prefixes

* zip: refactor usage of frontend_services

* debug info: refactor usage of frontend_services

* services basis: refactor frontend_services usage

* objects_super: refactor usage of frontend_services

* router: refactor usage of frontend_services

* services_abapgit: refactor usage of frontend_serv

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-20 17:54:23 +02:00
Marc Bernard
e8a6cb8a51
XSLT: Fix activation error (#5042)
Remove activation from `deserialize` and use `zcl_abapgit_objects_activation` instead.
2021-10-18 15:08:44 -04:00
Derby
9b582b039a
WDCA: Add support for appl. config content (#5030)
* object WDCA

object WDCA
+ wdy_config_appl-xcontent
+ wdy_config_appt

* Update zcl_abapgit_object_wdca.clas.abap

* Update src/objects/zcl_abapgit_object_wdca.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Update src/objects/zcl_abapgit_object_wdca.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Update zcl_abapgit_object_wdca.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-15 07:35:03 +02:00
Alexander Tsybulsky
65701dbcc8
pull on package reassign (#4999)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-13 06:12:19 +02:00
Marc Bernard
51ce0b4df9
FUGR: Fix performance issue (#5017)
Optimize selection of function group includes.
2021-10-06 08:01:51 +02:00
Marc Bernard
2b8c21bdbc
SXCI: Inactive classic BAdIs (#5006)
* SXCI: Inactive classic BAdIs

Implements a workaround since SAP does not show inactive classic BAdIs properly (missing entry in table `dwinactive`).

* Update zcl_abapgit_object_sxci.clas.abap

* Update src/objects/zcl_abapgit_object_sxci.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Change by

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-05 06:12:45 +02:00
Marc Bernard
0379bc6d11
Change Package Assignment (#4980)
* Change Package Assignment

Previously, if an object was assigned to another package (but not changed otherwise), AG would delete and re-create the object. This was also visible in the "Selective Pull" popups:



The new process is smarter and detects such changes. It re-assigns the package (via a TADIR change) and avoids dropping and re-creating. The package overwrite popup is also avoided (it will still appear if the object itself was changed, too):

* Better icon

* Add unit test

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Alexander Tsybulsky <sbcgua@users.noreply.github.com>
2021-10-05 06:02:20 +02:00
Marc Bernard
3e14313f32
SMIM: Last Changed By (#5009)
If "last changed" user is not found on logical object, try selection on physical object
2021-10-05 05:57:46 +02:00
Marc Bernard
0d8b4dd7f5
WDCC: Fix syntax error on lower releases (#5005) 2021-10-04 12:10:43 -04:00
Marc Bernard
c276c719d8
XSLT: Add late activation (#5003)
* XSLT: Add late activation 

In case a transformation depends on other objects like a class, the transformation will not activate if it's deserialized before the dependent objects. 

This change adds the transformation to the late activation step.

* lint

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-04 16:59:05 +02:00
Jaime Rodriguez Capote
bdedad5592
Delete child number from SICF node (#4988)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-01 08:18:22 +02:00
Lutzi3
e6f029b097
WDCC:Support all Config Types (#4985) 2021-10-01 08:14:16 +02:00
yellappam
34b2fb3222
FUGR: Clear TEXT when referring to dictionary (#4973)
In dynpro screen, when a field is referring to a data element and text is taken from dictionary, no need to serialize the text as it is always taken from dictionary. If the text is included then it will show unnecessary diffs when data element text changes.

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-01 08:12:18 +02:00
Marc Bernard
e0a9f1ccac
SRVD: Remove unused aliases (#4981)
* SRVD: Remove unused aliases

* Update
2021-09-27 16:12:19 -04:00
Christian Günter
d51643f026
SUSH: Clear metadata (#4967)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-24 06:35:30 +02:00
Marc Bernard
9038b31921
ENHO: Split code into separate files (#4951)
* ENHO: Split code into separate files

Similarly to class enhancements where enhanced methods are stored as individual files, this change separates the code for implicit enhancements (type `HOOK_IMPL`) into abap-files.

This makes the code more readable (instead of being embedded and escaped into XML) and allows for linting.

* Switch to filenames with hash

* CI

* Filenames in XML

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-24 06:34:01 +02:00
yellappam
6761998a5d
TABL: CLEAR dd05m-leng (#4950)
* CLEAR dd05m-leng

In S/4HANA system some of the data element lengths changed. Example: MATNR length changed from 18 characters to 40 characters. It would show as diff when this repo is pulled into S/4HANA. dd05m-leng is for information only hence, cleared it to avoid diffs.

* Replace tab with space

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Replace tab with 6 spaces

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-24 06:32:31 +02:00
Frederik Hudák
35e3ce8640
DOMA - clear domname from fixed values (#4941)
* DOMA  - clear valpos, domname from fixed values

* undo clear of valpos

* retrigger ci

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-24 06:30:52 +02:00
Marc Bernard
3393aaaf94
CLAS: Replace APACK references (#4968)
Also replaces references to APACK types
2021-09-23 17:35:03 -04:00
Marc Bernard
c63d92e6f1
Post-processing option for custom class serializer (#4953)
* Post-processing option for custom class serializer

When using the current exit for serializing classes, you have to code the complete serialization yourself (i.e. reading and formatting the code). 
https://docs.abapgit.org/ref-exits.html#custom_serialize_abap_clif

With this change, you get the option to let abapGit serialize the class first and then post-process the source in the exit. The change is compatible with existing implementations of the exit.

To use the post-processing option, add the following code to the beginning of the exit:

```abap
IF it_source IS INITIAL.
  RETURN.
ENDIF.
```

* Update ref-exits.md

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-18 06:23:06 +02:00
Marc Bernard
a72d3314cb
Remove exception from changed_by (#4952)
Simplify some code since `zcl_abapgit_objects=>changed_by` does not raise any exceptions.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-16 09:44:05 +02:00
Marc Bernard
b331de6bc7
Naming of class constants (#4945)
* Naming of class constants

This is in preparation of enforcing a naming convention for constants in classes/interfaces. At the end, the following lint rule shall be set:

```json
    "class_attribute_names": {
      "constants": "^C_.+$",
...
    },
```

After this, the only remaining constants not following this rule are in `zcl_abapgit_version`.

* Update zif_abapgit_dot_abapgit.intf.abap

* Update zcl_abapgit_gui_chunk_lib.clas.abap

* Update zcl_abapgit_gui_router.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-14 16:47:48 +02:00
Marc Bernard
68c4f10e02
SRFC: Improvements (#4912)
* SRFC: Improvements

- Check if `SRFC` is supported in `constructor`. This will ensure proper error handling (closes #4899). Note: Using the constructor is how it should be checked for other object types as well. 
- Added `changed_by` logic
- Simplified catch code

* SRFC: Improvements

* SRFC: Improvements

* Update message

* Raise

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-12 10:09:33 -04:00
Marc Bernard
a94d06d493
DDLS: Fix dump in lower releases (#4915)
* DDLS: Fix dump in lower releases

- Add requirements check to constructor
- Prevent delete call in case object does not exist

Ref #4899

* Update message

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-12 10:07:41 -04:00
Marc Bernard
61e629cd1f
Improvements for Objects Class (#4944)
* Improvements for Objects Class

This introduces a new `is_type_supported` method for `zcl_abapgit_objects` which is about 30x faster than the current `is_supported` method.

`is_type_supported` is used in the other methods like `changed_by` and `exists` to avoid instanciating or calling the object class unnecessarily. It won't be necessary to check for support before using these methods which will alllow simplifying the calling programs (separate PR).

There are also some new test cases for `is_type_supported` and for serializing a commom interface.

* No user id for unsupported objects

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-09-12 07:33:41 +02:00
Lars Hvam
ab701df97e
SPPF support (#4938)
* SPPF support

#4839

* update docs

* pretty print

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-09-10 11:01:02 -04:00
Lars Hvam
e7e8af832e
align package descripions (#4939)
prefix all package descriptions with "abapGit - "
2021-09-10 10:58:36 -04:00
Marc Bernard
e86e2267c0
Improve message if object type is not supported (#4913)
Minor text change
2021-08-27 14:53:20 -04:00
Marc Bernard
6b81d7d958
Improve message for subpackage errors (#4911)
Clarify error and resolution options in case subpackage already exists in system but is not included in pack hierarchy of repo root package.

Closes #4904
2021-08-27 12:58:12 -04:00
Lars Hvam
329fd9dc0e
interface and factory for ZCL_ABAPGIT_PERSIST_SETTINGS (#4882)
the old get_instance() method in ZCL_ABAPGIT_PERSIST_SETTINGS has been moved to a method in zcl_abapgit_persist_factory, plus interface added. Added to persist injector
2021-08-03 15:13:16 +02:00
Marc Bernard
ab3f24fe06
BRF+ System Application (#4856)
* BRF+ System Application 

- Clear user/time/system-specific fields
- Fix deletion of object
- Remove unnecessary "exists check"
- Updated test case https://github.com/abapGit-tests/FDT0

* Lint

* Lint

* WEBI: Improve error handling

Pass messages to log

* Reverse WEBI

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-07-17 10:26:47 +02:00
victorizbitskiy
73496a2755
Refactor: Exception handling #4852 (#4869)
https://github.com/abapGit/abapGit/issues/4852
2021-07-13 09:13:25 +02:00
Christian Günter
bffe75958c
SMTG: Implement changed_by (#4867)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-07-09 15:23:58 +02:00
Marc Bernard
39512676ca
WEBI: Improve error handling (#4864) 2021-07-06 17:36:40 +02:00
Marc Bernard
2e7d642786
ECVO: Fix "empty xml" error (#4863)
* ECVO: Fix "empty xml" error

Fixes regression from #3991

* Upload
2021-07-06 11:11:27 +02:00
Marc Bernard
7c32f824df
TABL: Clear DB Indexname (#4850)
Fixes diffs because platform specific DB index names. 

Updated test repo: https://github.com/abapGit-tests/TABL_with_index

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-07-01 14:15:32 +02:00
Sascha Wächter
30615e848e
Started with BRF+ serialization and fixed some errors from the first attempt (#4797)
* Fixed Version BRF+ Integration

* BRF+ serialization

* Fixed obsolete parameters and wrong boolean type

* Fixed some errors and filtered ComponentReleeases

ComponentReleeases in XML Export and Import of BRF+ API can be omitted and works also the same. Next try if I could delete the useless metadata (User, System, etc...) or must leave them empty and fill them manually before deserialization.

* Some little changes

Removed Parameter iv_marked_option for older releases and removed method wb_request_choice. Changed to transport automatically.
Aligned some parameters.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-06-28 13:29:56 +02:00
Marc Bernard
3defa2c165
WDCA: Clear parameter descriptions (#4851)
Fixes diffs because of parameters that are different between releases (or even SPs) or languages
2021-06-22 16:47:45 +02:00
Mike Pokraka
a9c40ea972
Remove experimental status from PDTS (#4831)
* Remove experimental status of PDTS

* Remove experimental status from PDTS
2021-06-10 10:03:17 +02:00
Lars Hvam
096aded586
LANGU rollbacks (#4829)
* LANGU rollbacks

#4828

* Update abaplint.json
2021-06-08 16:42:20 +02:00
Lars Hvam
753c2f5d21
Do not read TADIR-KORRNUM (#4825)
KORRNUM is misused for calculating the serialization sequence
2021-06-07 14:49:11 +02:00
Marc Bernard
38c453eb8b
FTGL: Update transport when deleting (#4821)
Add object to transport when deleting it.
2021-06-06 09:43:05 +02:00
Marc Bernard
887e7dd332
Offline repo: "Compare via RFC" feature (#4789)
* Offline repo: "Import via RFC" feature

Adds option to **offline** repositories for importing a repo via an RFC connection from another SAP system. It's a shortcut for doing "Export ZIP" in one system, and "Import ZIP" in the other.

Closes #4784

Pre-requisite: abapGit develop version (with this change) is installed on remote SAP system. 

Note: The general recommendation is to use **online** repositories and a git server for comparing and synchronizing systems.

* Lint

* Create guide-import-rfc.md

* Langu

* Langu

* Write-protect only

* Compare

* Compare

* Compare

* Compare

* Git

* Update docs/guide-import-rfc.md

Co-authored-by: Lars Hvam <larshp@hotmail.com>

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-06-04 15:09:09 +02:00
Marc Bernard
e2a156a326
Replace deprecated LANGU type (#4815)
* Replace deprecated LANGU type

Replace with `sy-langu` and update abaplint rule

* Replace langu

* Add langu to void types

* Replace table of langu
2021-06-02 08:04:05 +02:00
Marc Bernard
4cdb04c2c7
SCVI: Replace generic with native check (#4808)
* SCVI: Replace generic with native check

Replaces generic exist check with native function call

* Variable

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-06-01 13:05:49 +02:00
Marc Bernard
ac8bde9f6c
Fix use of sy-langu in object serializers (#4807)
* Fix use of sy-langu in object serializers

- Replace sy-langu variable with mv_language
- Replace sy-langu type with langu (makes it easier to spot sy-langu)
- Enhance generic serializer to use mv_language
- Add unit tests to generic serializer 
- Adjust and simplify serializers that are based on generic class

Closes #2080

* Update scvi+ueno

* Revert scvi

* Langu

* Langu

* Langu

* Langu

* Langu

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-06-01 13:02:42 +02:00
Marc Bernard
ad244abacd
Terminology: Inclusive Language - Part 6 (#4791)
* Terminology: Inclusive Language - Part 6

Change remaining variables and switch setting to main_language. 

Finally closes #4043

* Add todo

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-05-28 13:15:00 +02:00
Marc Bernard
5f4eb56071
DEVC: Application component for local packages (#4790)
For local packages, the application component is now stored in AG persistence. This will avoid the diff, if transportable packages are pulled into local packages.

Closes #1880
2021-05-28 05:45:17 +02:00
Juraj Adásek
f710d368e5
Regenerate profile SAP_ALL (#4792)
* Regenerate profile SAP_ALL

* Regenerate profile SAP_ALL after SUSO delete

Co-authored-by: Juraj Adasek <juraj.adasek@sap.com>
2021-05-27 06:05:22 +02:00
abap-weasel
30674e1e69
Release serialization resources (fixes #4774) (#4775)
* Release serialization resources (fixes #4774) 

Release serialization resources to prevent dump #4774 for export of large packages

* Free files after parallelization

* transfer files one by one

* Update src/objects/core/zcl_abapgit_serialize.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* fix lint, missing fs declaration

* index access on delete lt_found

* Update src/objects/core/zcl_abapgit_serialize.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* cleanup: index variable not required

* rollback to original APPEND LINES

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-05-20 11:33:41 +02:00
Marc Bernard
c2e9e58319
Enhance "Force Pull" to become "Selective Pull" (#4733)
* Enhance "Force Pull" to become "Selective Pull"

With this PR you can now peform a selective pull. Yay!

- Changes "Force Pull" to show *all* changed objects in the usual "Overwrite Popup". This allows you to select individual objects to be pulled no matter if they were changed locally or remotely.
- Does *not* change the regular "Pull" logic

Closes #413, #4282

* Combine delete and overwrite popups

* Add icons to abaplint.json

* Change if to case

* Add icons to abaplint.json

* Enhance UTs

* show_icon

* Show icon

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-05-20 06:19:00 +02:00
Marc Bernard
4d9d7fb37e
Remove adjust_namespaces (#4760)
* Remove adjust_namespace

Method is obsolete since namespace of object is already adjusted in `zcl_abapgit_filename_logic=>file_to_object`

* Remove adjust_namespace

* Remove bracket

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-05-14 10:55:46 +02:00
Marc Bernard
ce677e449f
INTF: Fix check if interface exists (#4759)
As mentioned in #4673, the existence check for interfaces is not correct and actually checking for classes. The PR will correct the check.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-05-14 10:28:35 +02:00
Lars Hvam
212fcb779e
LOG: remove RC field (#4746)
closes #4634
2021-05-09 10:58:31 +02:00
Marc Bernard
9f94f339aa
INTF: Refactor to fix "permission error" (#4673)
* INTF: Refactor to fix "permission error"

Implements interface deserializer the same way as the class deserializer.

Closes #4672

* Remove types

* Class exists

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-05-09 10:40:33 +02:00
ThomasPloski
1781290065
Adaptation of SRVD object handler (#4529)
* based on the lastest master

* pretty printer

* fix inline declaration fragments

* fixing method chaining

* Fix: Use boolc instead of IF, negate expression

* remove descriptions

* pretty printer

* empty line in method calls

* Fix: Statement does not exist in ABAPv702

* fix exceptions

* fix Indentation problem

* fix: Statement does not exist in ABAPv702(or a par

* mitigate usage of not existing objects in 702

* remove not existing objects for 702

* indentation issues

* next

* next

* Indentation issues

* next

* fix

* Fix: The EXPORTING keyword can be omitted

* change to constant mc_source_file

* Update zcl_abapgit_object_srvd.clas.abap

* changes regarding mbtools' feedback

* according to mbtools' feedback

* Update zcl_abapgit_object_srvd.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-05-09 10:38:47 +02:00
Lars Hvam
5e789531e0
Remove return code for parallel serializer (#4747)
closes #4586
2021-05-05 07:32:38 +02:00
Lars Hvam
7b336a4a71
cleanup unused local variables (#4739) 2021-05-01 09:51:05 +02:00
Mike Pokraka
58956a1059
Refactor PDTS into PDXX superclass (#4717)
* Add superclass

* Refactor into PDXX superclass

* Unit tests respect experimental indicator

* Lint

* Lint

* Lint+CHECK misbehaving

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-04-27 18:53:26 +02:00
Frederik Hudák
b1c76b9852
DCLS: implement changed_by (#4712) 2021-04-21 08:53:29 +02:00
Marc Bernard
41b301cc11
Fix dump in case of package name conflicts (#4704)
Replaces assert with error message (#4620)
2021-04-16 10:05:14 +02:00
Marc Bernard
f55cdcc253
Refactor filename logic (#4697)
Combines `zcl_abapgit_file_status=>identify_object` and `zcl_abapgit_object_files=>filename` into new class `zcl_abapgit_filename_logic`. This class provides `file_to_object` and `object_to_file` conversion logic similar to what `zcl_abapgit_folder_logic` does for packages and git folders. 

Also includes unit tests which were missing for the old methods.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-04-15 16:14:53 +02:00
Marc Bernard
f18a8ee82b
Terminology: Inclusive Language - Part 5 (#4702)
* Terminology: Inclusive Language - Part 5

Change of terminology (#4043)

- Replace `get_master_language` with `get_main_language` and remove it

* File Status

* Jump

* Language

* Main language

* Main language
2021-04-15 08:32:09 +02:00
Marc Bernard
23f62b993f
ENHx: Change order for deserialize (#4698)
Enhancements might refer to other objects of the repo so create them after the other objects.

Example: Repo includes enhancement for an exception class. Therefore, the exception class has to be deserialized before the enhancement.
2021-04-13 06:39:34 +02:00
Marc Bernard
eb8812eaac
Show "data" by object in repo view (#4689)
* Show "data" by object in repo view

Continuing on #3441

- "data" is now shown as `TABU` `<table>` in the repo view

* Remove get_item

* Add cmnt

* Update src/objects/core/zcl_abapgit_serialize.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Update zcl_abapgit_serialize.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2021-04-12 14:53:09 +02:00
Marc Bernard
631d0fdccb
Refactor status calculation (#4679)
* Fix dump due to package name conflicts

Raises an error message instead of dumping

Closes #4620

* Split calculate_status

* Refactor only

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-04-10 11:26:31 +02:00
Marc Bernard
086a23daca
ODSO: Replace exceptions that exist in SAP_BW only (#4694)
Closes #4692
2021-04-10 10:55:57 +02:00
Marc Bernard
607ac4f3ab
SOTS: Uninstall with usage reference (#4687)
* SOTS: Uninstall with usage reference

Remove usage references of `SOTS` texts during uninstall

* Add comment

Co-authored-by: Lars Hvam <larshp@hotmail.com>

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-04-08 10:33:13 +02:00
Marc Bernard
cd6da45a12
ENHx: Improve error messages (#4686)
Include reference to previous exception and exception texts in error messages for enhancement implementations (`ENHO`, `ENHC`)
2021-04-07 17:48:53 +02:00
Marc Bernard
bf5199b8d2
APACK: Replace interface name with constant (#4684)
* APACK: Replace interface name with constant

Closes #4248

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-04-03 08:59:44 +02:00
Marc Bernard
56a0dca134
Refactor: Objects Class (#4664)
* Refactor: Objects Class

Splits `zcl_abapgit_objects` into smaller classes

Moves the following methods and related test cases:

`zcl_abapgit_objects_check`
- `deserialize_check`
- `warning_overwrite_find`
- `warning_package_find`
- `checks_adjust`
- `warning_overwrite_adjust`
- `warning_package_adjust`

`zcl_abapgit_files_deserialize`
- `files_to_deserialize`
- `filter_files_to_deserialize`
- `prioritize_deser`
- `adjust_namespaces`

* PP

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-27 10:46:38 +01:00
Marc Bernard
73dde20557
Add warning if namespace is not modifiable (#4669)
* Add warning if namespace is not modifiable

Closes #4648

* If

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-26 09:11:35 +01:00
Marc Bernard
0c2f060445
Fix namespace check (for DOCT objects) (#4671)
Improve regex to avoid conflict with object names that contain multiple `/`

Closes #4670
2021-03-26 06:45:48 +01:00
Marc Bernard
8f0532d015
ENHC: Fix error when updating object (#4667)
If the composite enhancement already exists, trying to update it fails with error "Error while creating enhancement implementation"

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-25 12:19:34 +01:00
Marc Bernard
18d484af39
PROG: Refactor deserialize and fix inactive code (#4657)
* PROG: Refactor deserialize and fix inactive code

This is a follow-up to #4500, #4509, #4518

- Split `ZCL_ABAPGIT_OBJECTS_PROGRAM->DESERIALIZE_PROGRAM` into smaller methods
- `INSERT_PROGRAM` now uses standard `RPY_PROGRAM_INSERT` and only does `INSERT REPORT` in exceptional cases like function groups (see below)
- Special case of Code Inspector variants is handled by `ZCL_ABAPGIT_OBJECT_PROG->DESERIALIZE_WITH_EXT` since these aren't actual programs (but includes containing data)

Using the standard function fixes the issue of inactive code that can't be accessed after a pull. This used to happen, for example, when a program contained syntax errors due to missing objects.

* Update zcl_abapgit_objects_program.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-25 07:56:20 +01:00
Marc Bernard
4c8f7fe117
ENHO: Clear fields for exceptions (#4666) 2021-03-24 14:55:11 +01:00
Marc Bernard
e143ec7f70
SOTS: Fix error during deserialize (#4660)
Error "The concept will be created in the non-original system" (`SOTR_MESS  137`) 

It's not an error (see function `SOTR_STRING_CREATE_CONCEPT`) and has been removed.
2021-03-23 06:34:42 +01:00
Jānis B
59479570c5
Change DDIC activation mode (#4503)
* Fixes DDIC activation

The changes mimic the behavior of CTS Activatin Job as of 7.40 SP 23

* fixes Activation of dependant DDIC (#4496)

The change attempts to mimic behaviour of SAP CTS DDIC Mass Activation Job

* Revert to DDMODE = 'O'

Reverts to activation mode "in original" system; adds "forced activation" (FRCACT = abap_true)

* restore variable definitions

* and Pretty Printer

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-22 13:12:49 +01:00
Lars Hvam
f108143a90
add ORDER BY (#4629)
* add ORDER BY

* wdcc, add ORDER BY

* wapa add order by

* udmo, add order by

* tobj, add order by

* stvi, add order by

* CHAR, add order by

* CMOD, add order by

* dial, order by
2021-03-15 15:25:02 +01:00
Marc Bernard
a1cc7f8668
CLAS: Fix several issues related to class includes (#4510)
* CLAS: Remove test class include

Once unit tests are disabled, the test class include is now completely removed (before it might have still contains obsolete code).

Closes #4460

* Reverse pp

* Update 6 objects

* Typo

* Typo

* Revert

* Revert

* Revert

* Revert

* Revert

* Lint

* Update zcl_abapgit_oo_class.clas.abap

* Move add_to_activation

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-12 07:05:47 +01:00
Mike Pokraka
bb0591f12e
Update unit test to match changed message (#4631) 2021-03-12 07:02:25 +01:00
g-back
71c4849ae5
Minor Fixes (#4627)
* remove exception from signature, remove comment

* change search help, try fieldname first

* enable lang switch when multiple tcodes are assgnd
2021-03-11 14:51:48 +01:00
Jakub Filak
cce8660054
objects: do not consider only native objects as supported (#4611)
After the pull request:
https://github.com/abapGit/abapGit/pull/4589

Objects supported by abapGit-plugins are not deserialized and
all are reported as not supported.

Closes #4610

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-06 22:31:49 +01:00
Alexander Tsybulsky
17eac7b6c3
Strip XML details user exit (#4599)
* exit draft

* call exit

* linter fix

* PRE_CALCULATE_REPO_STATUS docs

* settings UI

* wire status calculation and repo settings

* uppercase

* diff rendering fix

* adjust docs

* adjust docs

* Remove settings

* more docs adjustments

* pass repo meta data into the exit

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-06 09:35:35 +01:00
yellappam
1a94c9a0f0
TYPE: Serialize active version (#4593)
* TYPE: Serialize active version

When a new type-pools is created, SAP creates active version by default. SY-SUBRC is always set to 0 for the first function module call as there is always an active version hence, second function will never be called. Remove the second call.

* Multiple changes

Check existence of the object using TADIR entry
If the active object doesn't exist, show proper message

* Existence check using PROGDIR

* Replace SELECT..ENDSELECT

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-04 08:49:44 +01:00
yellappam
09353951eb
Group unsupported object type messages (#4589)
* Group unsupported messages per object type

When number of unsupported objects increase in a package, user needs to scroll through the long list of messages. This change groups messages per object type reducing the number of messages. Also, the filtering before serialization is good in terms of effective work process utilization( in parallel mode ).

* Replace LINE_EXISTS with READ TABLE

* Cache the supported object types

* Show object name 

If there is only one object name for the unsupported object type, show the name.

* Spelling: "object(s)" to "objects"

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-03 05:36:21 +01:00
Marc Bernard
8a0af2fc67
DDIC: Error message in case of "new" versions (#4584)
In case DDIC objects exist as "new" version only , the system will now raise an error message to alert the user that "No active version was found". 

Note: The log will disappear after some navigation and such objects will not be included in the repo view if they only exist locally (until they are activated).
2021-03-02 17:38:26 +01:00
Alexander Tsybulsky
3df4863feb
LXE langs refactoring (#4494)
* main refactoring part

* linter fix

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-01 07:02:04 +01:00
sandraros
8edc8736f7
Fix pull clasenh "file emxxx not found" #4515 (#4552)
* Fix #4515

Fix #4515 by serializing new TAB_INCLUDES to contain include numbers of new methods of classes.

* Last fix before pull request

* files named "em_<methodname>" instead "emxxx"

* editorder without gaps

* Cleanup commented out line

* fixes abaplint

Co-authored-by: sandra rossi <sandra.rossi@gmail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-28 19:40:54 +01:00
Marc Bernard
da43c34fc4
DEVC: Unlock in case of errors (#4561)
* DEVC: Unlock in case of errors

If a package object cannot be deleted or deserialized properly, it remains locked.

The change unlocks the object in these cases.

* Update set_lock

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-28 17:16:33 +01:00
Marc Bernard
0392543ff5
AVAR: Unlock after deserialize (#4560)
* AVAR: Unlock after deserialize

* Dequeue

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-28 17:07:15 +01:00
Marc Bernard
f8076e9ca2
TABL: Remove field position from serialization (#4508)
* TABL: Remove field position from serialization

It's not necessary to serialize field position (`DD03P-POSTION`). Fields can simply be numberred sequentially during deserialize.

This avoid issues with include structures that have different number of fields in original and target systems.

Closes #4506

* Clear tabname, ddlanguage

* Lint

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Clear dd08v-ddlanguage

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-28 10:47:16 +01:00
Lars Hvam
09ce51e646
WDCC fix dump (#4563)
* WDCC fix dump

* Update zcl_abapgit_object_wdcc.clas.abap
2021-02-28 10:09:58 +01:00
Marc Bernard
db61b57b80
DEVC: Avoid syntax check warning (#4559)
* DEVC: Avoid syntax check warning 

Add pragma

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-24 05:53:34 +01:00
Lars Hvam
7112c4ff3a
WDCC serialization, fix dump (#4557)
in case the xml is empty, skip the pretty print, this will avoid a short dump during pretty printing
2021-02-24 05:51:28 +01:00
Marc Bernard
eea7f2527a
PARA: Unlock in case of errors (#4526)
If a PARA object cannot be deleted, it remains locked.



The change unlocks the object in this case.
2021-02-18 06:29:42 +01:00
Christian Günter
5d1aaa4eba
SUSH - raise error if not supported (#4521) 2021-02-17 06:37:31 +01:00
Ludwig Stockbauer-Muhr
f7de72c2aa
fixes deserialization issue of FUGR includes (#4518)
Closes #4517
2021-02-16 19:12:50 +01:00
Lars Hvam
5efc7a63ab
update deps in package.json (#4514)
* update deps in package.json

* enable rule max_one_method_parameter_per_line
2021-02-15 14:16:16 +01:00
Marc Bernard
7e0b75d2a8
Deserialize: Commit changes before activation (#4509)
* Deserialize: Commit changes before activation

Some objects (like `prog` or `intf`) are deserialized as inactive objects i.e. uncommitted changes. Usually, these changes are committed to the database after the activation process (end of the session). However, if there are any errors during activation, an exception is raised which will automatically do a `rollback work`. 

This change will make sure that inactive objects are preserved even if the activation fails. One can then analyze the inactive objects, make necessary corrections, and activate them manually.

Closes #4500

* Replace with standard function

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-14 09:29:50 +01:00
Marc Bernard
b4cd1695ab
XSLT: Unlock in case of errors (#4512)
If an XSLT object has for example syntax errors, it remains locked and can't be edited:

The change unlocks the object in this case.
2021-02-13 17:09:29 +01:00
Lars Hvam
8e07d46f4b
jump_se11, remove unused parameters (#4498) 2021-02-09 15:50:27 +01:00
Jan Ježek
901d877206
Serialise only main language for shi3 objects (#4497) 2021-02-09 07:31:16 +01:00
Marc Bernard
30201d4329
I18N: Catch exceptions (#4491)
* I18N: Catch exceptions

Handle exceptions properly and avoid unnecessary serializations

* Remove pragma

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-06 09:36:29 +01:00
Marc Bernard
73576ee60e
Improve error messages (#4472)
* Improve error messages

Pass T100 messages to UI/log

* T100 errors

* APACK

* OO

* DEVC

* DRUL

* DTDC

* SRVB

* OBJS

* Program

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-03 16:31:55 +01:00
Marc Bernard
dd813ed807
DEVC: Fix check if package is empty (#4466)
* DEVC: Fix check if package is empty

SOTR object is linked to SAP package and removed together with the package on uninstall. Therefore, it should not be taken into account when checking if a package is empty.

* Update comment

Co-authored-by: Lars Hvam <larshp@hotmail.com>

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-02 21:01:48 +01:00
Marc Bernard
0cd25ce331
SICF: Fix regression (#4481)
Removed code is part of `adjust_objects` already (https://github.com/abapGit/abapGit/pull/4426)
2021-02-02 07:31:17 +01:00
Marc Bernard
f570a6a0a9
Reduce flicker of status bar during deserialize (#4467)
The progress bar should not be turned off after `deserialize_object` (but only at end of `deserialize`).

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-02-01 09:36:00 +01:00
Marc Bernard
0e6a4ab764
W3xx: Remove TADIR entry on uninstall (#4465)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-31 10:43:29 +01:00
JustACasual
bcbc3d527d
I18N: LXE Translations (#4415)
* Issue 2424

https://github.com/abapGit/abapGit/issues/2424

* Issue 2424

https://github.com/abapGit/abapGit/issues/2424

* Update src/objects/zcl_abapgit_object_fugr.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Fixing LINT issues

* Fixing LINT issues

* TABL, default ROWORCOLST on deserialize (#4430) (#4)

* Fix for #4425

* Remove whitespace at end of line

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Remove whitespace at end of line

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

Co-authored-by: DerGuteWolf <DerGuteWolf@users.noreply.github.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Centralize LXE functionality

* Fix FUGR LXE

* delete issue reference comments

* Delete issue reference comments

* Remove Aliases for LXE types

* Review Changes

* Copy from #4452

Integrate changes from #4452 into #4415

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: DerGuteWolf <DerGuteWolf@users.noreply.github.com>
Co-authored-by: Sebastian Koitka <sebastian.koitka@dematic.com>
Co-authored-by: Marc Bernard <marc@marcbernardtools.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-01-31 10:36:28 +01:00
Marc Bernard
1eac7e1f89
ACID: Avoid "no changes found" popup (#4464)
* ACID: Avoid "no changes found" popup

- Fix "no changes found" popup in case identical object is deserialized again
- Change to T100 messages
- Add missing dequeue

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-28 08:48:25 +01:00
Marc Bernard
c48c030a0c
Fix status calculation on package move (#4447)
* Fix status calculation on package move

If an object is moved to another package *and* changed, the status was "blank". Now the object status is properly shown as "added/deleted". Also the `packmove` flag is *not* set anymore since a simple `tadir` change would not be sufficient. 

Extended unit test to cover this case.

* Split test method

* pretty

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-25 13:55:21 +01:00
Marc Bernard
40efc567f6
Automatic creation of top repository package (#4431)
* Automatic creation of top repository package

When adding a repository, it is not necessary anymore that the top SAP package assigned to the repository exists. Just enter a package name and clone (works for offline, too). 

The initial diff will now show that the top package exists remotely only. Therefore, when pulling, you will not get the "confirm overwrite package" popup anymore. Yippie!

* Typo

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-23 10:11:54 +01:00
Marc Bernard
cd3b29aac1
NSPC: Add support for namespaces (#4426)
* NSPC: Add support for namespaces

Part 2 of #835

If a repo contains any namespaced object, then this PR will make namespaces part of the repository. So far, serializing and updating an existing namespace is supported.

abapGit can not (yet) create the namespace automatically. This will require a bit of refactoring which will then also support creating the top repo package automatically. Coming soon. 

See readme of test case https://github.com/abapGit-tests/NSPC

* Refactor build

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-23 10:05:58 +01:00
DerGuteWolf
4c07c33c21
TABL, default ROWORCOLST on deserialize (#4430)
* Fix for #4425

* Remove whitespace at end of line

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Remove whitespace at end of line

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2021-01-21 06:21:23 +01:00
Marc Bernard
31a550db0f
Refactor I18N settings (#4423)
* Refactor I18N settings

- Consolidate I18N parameters into a structure and pass it to xml and serializer classes (#4415)
- Continue change of terminology (#4043)

* Remove changes to serializer class

* Main lang

* DSYS

* OTGR

* Repo view

* Main langu

* Repo view %26 stage

* Serialize

* Settings

* Repo view

* Defs

* Stage

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-19 14:29:09 +01:00
Marc Bernard
7d4773ca23
NSPC: Add warning if namespace does not exist (#4420)
* NSPC: Add warning if namespace does not exist

Part 1 of #835

* Limit to xml files

* Unit test

* RC

* Regex

* Refactor checks into methods

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-18 17:55:34 +01:00
Marc Bernard
8ff0445673
DEVC: Avoid dump when creating new package (#4419)
Usually, in abapGit packages are created by the folder logic already. But it dumps with "`li_package` is not assigned," if deserialize is used in other ways.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-18 09:19:31 +01:00
Marc Bernard
7e2d05a30b
AVAR: Remove tadir when uninstalling (#4418) 2021-01-18 07:34:31 +01:00
Marc Bernard
a824eef662
Prevent staging of duplicate files (#4403)
* Prevent staging of duplicate files

Since objects cannot exist in multiple packages, the staging page is now checking the selected files to prevent the resulting repo from containing an object multiple times.

If an object is moved to another SAP package and the corresponding files are seleted to be added to the repo (for the new package), then the files must also be removed from the repo (from the old package). If not, an error is raised.

* Remove other changes

* Update file status

* Extend unit test

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-17 09:28:54 +01:00
Lars Hvam
db6db7cf79
remove more unused variables (#4413) 2021-01-15 17:22:51 +01:00
Lars Hvam
690da4e51f
delete some unused variables (#4411)
* delete some unused variables

* bdef, remove unused vars

* remove some more
2021-01-15 08:31:01 +01:00
Marc Bernard
9ef3f1ee7e
Uninstall ENQU before TABL (#4412)
Lock objects must be uninstalled before corresponding tables
2021-01-15 08:27:48 +01:00
Marc Bernard
231d0c01e6
Fix ignore logic for local files (#4407)
Closes #4405

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-13 08:16:04 +01:00
ThomasPloski
468a1f3df8
Adjustment to BDEF Object Handler (#4012)
* Adjustment to BDEF Object Handler

Adjustment to BDEF Object Handler regarding exchange file format

* fix abaplint stuff

* fix abaplint issue

* adaptation in deserialize method

* fix abaplint issues

* fixes abaplinter issues

* requested changes

* fix type issue

* fix type issue

* delete unused method FILL_METADATA_FROM_DB

* enhance signature with exception information

* change reference type

* change to initial activation logic

* change to abap step for activation

* change of reference type as part of create Service

Co-authored-by: Christian Günter <christianguenter@googlemail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-13 08:10:27 +01:00
Marc Bernard
830a682421
W3xx: Add object to transport on uninstall (#4402)
Fix missing transport entry when uninstalling `w3mi` and `w3ht`.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-12 08:49:44 +01:00
Lars Hvam
889d062e1c
data, basic serialization (#4369)
* data

* refactor ZCL_ABAPGIT_SERIALIZE

* upd

* serializing

* cleanup

* fix

* fix

* rename
2021-01-09 10:50:58 +01:00
Marc Bernard
6b23aaa0fd
Reduce memory consumption during deserialize (#4389)
* Reduce memory consumption during deserialize 

Fix issue with namespace objects

https://github.com/abapGit/abapGit/pull/4357

* Unit test
2021-01-08 11:57:47 +01:00
Marc Bernard
46bc6dc5db
ENHC: Last changed by (#4380) 2021-01-05 07:55:19 +01:00
Lars Hvam
8b506aa077
omit some default parameter names (#4370)
* apack, omit parameter names

* mass and objects

* omit

* omit
2021-01-04 10:41:20 +01:00
Marc Bernard
25f2bf4d40
DDLS: Fix dump during serialization (#4371)
The specific dump occurred when the source was empty. Now it checks the string length properly.

Closes #4309

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-04 10:06:42 +01:00
Marc Bernard
6dfa4eee17
Reduce memory consumption during deserialize (#4357)
* Reduce memory consumption during deserialize

Import of objects required unnecessarily a lot of memory. This was the especially the case during the initial import of repos with large (binary) objects or high number of objects (even if they were not under /src/). 

With this fix, an instance of an object serializer now contains only the files associated with this object (rather than all (!) files of the repo).

* Change path logic

* Comment

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-30 08:59:41 +01:00