Commit Graph

864 Commits

Author SHA1 Message Date
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
Marc Bernard
6f38ae63dd
ENxx: Fix error when uninstalling (#4359)
Uninstall of enhancements failed with "Action cancelled" error and left object locked. 

Removed call of `save` since calling `delete` method is sufficient. Also added `run_dark` for `delete`.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-29 09:41:13 +01:00
Marc Bernard
871a47516b
SHI5: Add object to transport (#4358)
Closes #4211
2020-12-29 09:28:41 +01:00
Marc Bernard
e7d7723bd5
Raise error if package is not part of package hierarchy (#4331)
* Raise error if package is not part of package hierarchy

If a package exists locally and remotely, but the local package is not part of the package hierarchy associated with the repo, then an error message will be raised.

The local package must be assigned manually to the package hierarchy before abapGit can process this scenario. 

Note: The assignment is not done automatically, since it's not clear where in the hierarchy the new package should be located.

* lv_msg

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-28 13:26:45 +01:00
d034973
afb8ff8671
new handler for SUSH (#4324)
* neu handler for SUSH

* fix ABAP

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-28 13:24:03 +01:00
Marc Bernard
4bfc56b79e
Fix pull errors related to files deleted remotely (#4338)
* Fix pull errors related to files deleted remotely

Improve #4281 by moving "ignore logic" to `filter_files_to_deserialize`

* Added unit test

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-28 12:59:21 +01:00
Fabian Lupa
e1e039a446
Implement jump for CUS1 (#4354) 2020-12-24 12:55:47 +01:00
Fabian Lupa
dac05e5eb6
Implement jump for CUS0 (#4353) 2020-12-24 10:01:25 +01:00
Marc Bernard
a3ce719b0c
Remove unnecessary constructors (#4341)
* Remove unnecessary constructors

A constructor that redefines the super constructor but only calls the super constructor with the same parameters is unnecessary and can be removed

https://github.com/abaplint/abaplint/issues/1417

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-22 07:05:13 +01:00
Marc Bernard
c74ca9eb4c
TABL: No structure comparison for global temp tables (#4347)
Closes #4081

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-22 06:52:58 +01:00
Jānis B
6e4982f417
fix creation of TR entries for uninstalled PROGs (#4343)
* fix creation of TR entries for uninstalled PROGs

Fixes creation of CTS Transport Request entries for PROG Objects uninstalled from transportable package.

* Abaplint Fixes

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-22 06:44:46 +01:00
jan-jezek
158d1e27b7
Serialise only main language for ENHS and ENHO objects (#4337)
* Add language parameter to sotr

* Added language parameter to accomodate change

* Abaplint fixes

* Abaplint

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

* Abaplint

* abaplint bot

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

* abaplint bot

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

* Removed iv_language from object

* Method call without parameter name

Co-authored-by: Jan Jezek <jan.jezek@sap.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-18 11:11:24 +01:00
Marc Bernard
01a2363c72
ENHO: Implement missing deserialize for WDYC (#4332)
* ENHO: Implement missing deserialize for WDYC

Related to #3586

* Downport

* Update src/objects/enh/zcl_abapgit_object_enho_wdyc.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>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-15 10:23:02 +01:00
Marc Bernard
744ce9efce
Align naming of object super classes (#4327)
* Align naming of object super classes

- SAXX_SUPER for SAMC %26 SAPC
- W3XX_SUPER for W3HT %26 W3MI

* Delete old classes

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-15 08:05:11 +01:00
Sercan K.D
55ee890080
Fix missing i_suppress_dialog parameter syntax error in 731 system (#4328)
* Fix missing i_suppress_dialog parameter syntax error in 731 system

* replace cx_root with cx_sy_dyn_call_param_not_found

* revert back to cx_root because checks have failed

"Statement does not exist in ABAPv702(or a parser error)"

* Revert "revert back to cx_root because checks have failed"

This reverts commit 73b9b2aa6f.

* replace cx_root with cx_sy_dyn_call_param_not_found, sorry i didn't see that extra quote character, should be fine now.

* fix whitespace

Co-authored-by: larshp <larshp@hotmail.com>
2020-12-15 08:00:29 +01:00
Marc Bernard
c6f6ddb17e
VIEW: Fix deserialize of maintenance views (#4317)
Maintenance views can have dependencies on tables with foreign keys. Such cases can lead to errors during deserialize since the foreign key relationships between tables are processed only in the "late" step.

This fix moves the processing of maintenance views (viewclass = c) to the "late" step.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-14 14:52:50 +01:00
Marc Bernard
ac1c3baa0d
Fix typo "odd" > "of" (#4316) 2020-12-13 08:29:28 +01:00
Lars Hvam
260af61407
ecatt exceptions, test (#4312) 2020-12-12 08:51:49 +01:00
Marc Bernard
869c0bccb5
WDYN: Improve error messages (#4310)
Pass exception text to UI/log

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-11 07:54:19 +01:00
Marc Bernard
46e2dd827b
Package Structure - Part 4 (#4305)
* Package Structure - Part 4

$ABAPGIT_OBJECTS_CORE:

ZCL_ABAPGIT_DEPENDENCIES
ZCL_ABAPGIT_FILE_STATUS
ZCL_ABAPGIT_FOLDER_LOGIC
ZCL_ABAPGIT_OBJECTS
ZCL_ABAPGIT_OBJECTS_ACTIVATION
ZCL_ABAPGIT_OBJECTS_FILES
ZCL_ABAPGIT_SERIALIZE
ZCL_ABAPGIT_TADIR
ZIF_ABAPGIT_COMPARATOR
ZIF_ABAPGIT_OBJECT
ZIF_ABAPGIT_OBJECTS
ZIF_ABAPGIT_TADIR
ZCL_ABAPGIT_SKIP_OBJECTS

$ABAPGIT_OBJECTS_TEXTS:

ZIF_ABAPGIT_LANG_DEFINITIONS

#4253

* ZIF_ABAPGIT_LANG_DEFINITIONS

* Sync

* Sync

* Sync

* Sync

* Move objects

* Sync

* always upload build artifact

* Move type to interface

* Types

* Add package

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-11 07:50:10 +01:00
Lars Hvam
efaa0e65c0
more generic exception catching (#4307) 2020-12-11 07:46:07 +01:00
jan-jezek
c6a54b9912
Fix master language only, duplicate entries for shi3 objects (#4308)
* Fix master language only for shi3 objects

* Fix abaplint

* Fix duplicates in shi3

* Abaplint

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

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2020-12-11 07:43:52 +01:00
Marc Bernard
8fcc5c2f95
DSYS: Get changed by (#4303)
Get "changed by" user

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-09 09:27:11 +01:00
Marc Bernard
8118ab836d
SMIM: Improve error messages (#4304)
Pass T100 messages to UI/log

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-09 08:02:55 +01:00
Marc Bernard
eb1a6fab90
SOTS: Get changed by (#4302)
Get "changed by" user
2020-12-09 05:27:13 +01:00
Marc Bernard
b31885796d
Fix pull errors related to files deleted remotely (#4281)
In case files are deleted remotely, the files are now ignored during a pull. In other words, "pull" will not touch objects that exist only locally and not remotely.

To delete such objects locally, use "reset local (forced pull)" which will show a popup for these objects and let you delete them.

Closes #4277

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-08 17:16:04 +01:00
Marc Bernard
0fc7b43a35
PROG: Fix transport and work area (#4242)
* PROG: Remove objects from work area 

Fixes issue with incomplete deletion of inactive objects

Closes #4151

* Lint

* Add correction

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-07 09:38:56 +01:00
Marc Bernard
5ed2f5bb22
DOMA: Fix serialize for missing translations (#4283)
Closes #4278

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-04 09:01:24 +01:00
Marc Bernard
1c8f8038c5
Package Structure - Part 3 (#4286)
$ABAPGIT_OBJECTS_OO:

ZCL_ABAPGIT_OO_BASE
ZCL_ABAPGIT_OO_CLASS
ZCL_ABAPGIT_OO_FACTORY
ZCL_ABAPGIT_OO_INTERFACE
ZCL_ABAPGIT_OO_SERIALIZER
ZIF_ABAPGIT_OO_OBJECT_FNC

#4253

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-04 08:51:43 +01:00
Marc Bernard
58024be52e
TRAN: Improve error messages (#4280)
* TRAN: Improve error messages

Pass T100 messages to UI/log

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-04 08:46:08 +01:00
Marc Bernard
d11c82148e
Package Structure - Part 2 (#4273)
* Package Structure - Part 2

$ABAPGIT_OBJECTS_TEXTS:

ZCL_ABAPGIT_LONGTEXTS
ZCL_ABAPGIT_SOTR_HANDLER
ZIF_ABAPGIT_LANG_DEFINITIONS
ZIF_ABAPGIT_LONGTEXTS

$ABAPGIT_OBJECTS_ENH:

ZCL_ABAPGIT_OBJECT_ENHO_BADI
ZCL_ABAPGIT_OBJECT_ENHO_CLASS
ZCL_ABAPGIT_OBJECT_ENHO_CLIF
ZCL_ABAPGIT_OBJECT_ENHO_FUGR
ZCL_ABAPGIT_OBJECT_ENHO_HOOK
ZCL_ABAPGIT_OBJECT_ENHO_INTF
ZCL_ABAPGIT_OBJECT_ENHO_WDYC
ZCL_ABAPGIT_OBJECT_ENHO_WDYN
ZCL_ABAPGIT_OBJECT_ENHS_BADI_D
ZCL_ABAPGIT_OBJECT_ENHS_HOOK_D
ZIF_ABAPGIT_OBJECT_ENHO ENHO
ZIF_ABAPGIT_OBJECT_ENHS ENHS

$ABAPGIT_OBJECTS_TEST:

ZCL_ABAPGIT_OBJECTS_CI_TESTS
ZCL_ABAPGIT_PERFORMANCE_TEST
ZCL_ABAPGIT_TEST_SERIALIZE

* Interfaces for ENHx

* Git platform subpackage

* Git_platform, test packages

* Update package.devc.xml

* Update package.devc.xml

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-04 08:41:35 +01:00
Marc Bernard
a3c98afbef
PINF: Missing transport entry (#4275)
* PINF: Missing transport entry

- Added recording into transport for PINF 
- Added description for FTGL "Feature toggle"

* ftgl

* ftgl

* ftlg
2020-12-03 15:12:55 +01:00
Marc Bernard
5ca21a837d
CLIF: Improve error messages (#4271)
Pass T100 messages to UI/log

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-02 13:08:42 +01:00
Marc Bernard
7f61ebd645
UI: Clear progress bar (#4249)
* UI: Clear progress bar

Clears status/progress bar at end of process and removes leftover messages. 

Closes #3505

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-27 10:18:52 +01:00
Marc Bernard
ca0ff368c3
Remove obsolete late_deser from metadata (#4243)
* Remove obsolete late_deser from metadata

Final part to remove late_deser flag. Solution remains compatible with old bridge class which still uses the flag.

* Call

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-25 09:59:33 +01:00
Marc Bernard
e36486901d
Check objects when installing into main package (#4244)
* Check objects when installing into main package

Closes https://github.com/abapGit/abapGit/issues/2273

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-25 09:53:56 +01:00
Marc Bernard
bdcb725fc9
Replace cl_aunit_assert with cl_abap_unit_assert (#4239)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-24 17:28:43 +01:00
Lars Hvam
01d968c1f8
show log, remove title parameter (#4234)
* show log, remove title parameter

the log objec already have the title as part of the object, another input is not required

this aligns the code to always use the title from the object

closes #4223

* zif_abapgit_log, change title to csequence input
2020-11-24 15:41:26 +01:00
Lars Hvam
d3b68b8a48
remove broken dynamic call (#4221)
closes #4195

but lets keep #3453 open
2020-11-24 07:52:58 +01:00
Lars Hvam
381d40e35a
ZCL_ABAPGIT_HASH add shorthand methods (#4220)
This adds shorthand methods for the SHA1 calculation of the different git artifacts.
More logic in ZCL_ABAPGIT_HASH, but easier to read and less application logic.
2020-11-23 14:30:31 +01:00
Jaime Rodriguez Capote
9ef961cc8a
DDLS newline serialization in 750 and lower (#4143)
* DDLS: Empty line at serialization

Change included in 751+

* Newline serialization remove spaces

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-22 09:47:20 +01:00
Lars Hvam
4a30a3c079
VIEW file format updates (#4010) 2020-11-22 09:45:34 +01:00
Fabian Lupa
6c0df0f5bd
Support JUMP in SHI3 for GHIER (#4209) 2020-11-20 16:51:26 +01:00
Marc Bernard
46470da59d
Improvements for uninstall (#4198)
* Improvements for uninstall

- Improve error handling on deletion collecting errors in log
Closes #4197

- Remove limit of 3 loops which allows deleting objects with deeper dependencies
(Follow-up https://github.com/abapGit/abapGit/issues/3228#issuecomment-728800249)

* Exception

* Error msg

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-19 09:31:31 +01:00
Fabian Lupa
cac7cd42fb
Implement JUMP for SHI5 (#4202) 2020-11-18 18:27:53 +01:00
Marc Bernard
e93cbc5a1f
Move ty_deserialization, ty_step_data, ty_repo_ref_tt (#4181)
* Move ty_deserialization, ty_step_data

Remove dependencies from `zif_abapgit_definitions` (see https://github.com/abapGit/abapGit/issues/4179)

* Move to interface

* Move ty_repo_ref_tt
2020-11-16 08:34:29 +01:00
Lars Hvam
95e427b970
Move type ty_seocompotx_tt (#4168) 2020-11-12 14:29:42 +01:00
Marc Bernard
3d26041779
DEVC: Remove obsolete TADIR entries during uninstall (#4150)
* DEVC: Remove obsolete TADIR entries 

In case a package is local (ie no transports), abapGit will now check if objects still exist in the package. In case an object does not exist anymore, the corresponding TADIR entry will be removed. This allows empty local packages to be uninstalled automatically.

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-12 08:55:18 +01:00
Marc Bernard
cc6a207926
DDLS: Uninstall CDS views even if references exist (#4149)
Uninstall will now remove CDS views even if they are referenced in other views.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-12 08:48:48 +01:00
Marc Bernard
b25a67acea
Terminology: Inclusive Language - Part 2 (#4159)
* Terminology: Inclusive Language - Part 2

Change "Master Language" to "Main Language" in UI and comments (documentation and variables next)

* Docs

* Docs

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-11 10:36:38 +01:00
Marc Bernard
098682dcbb
PROG: Remove inactive sources during uninstall (#4141) 2020-11-07 09:24:34 +01:00
Lars Hvam
a53776ab5a
delete unused method in ZCL_ABAPGIT_OBJECT_CHDO (#4130)
* delete unused method

delete unused method GET_GENERIC in class zcl_abapgit_object_chdo

* enable rule unused_methods
2020-11-03 14:55:01 +01:00
Mike Pokraka
c1b2cf10a0
Update unit tests to use CI (#4106)
* Update unit tests to use CI

* Make test repo configurable

* Remove local tests and use CI

* Lint fixes

* Replace local tests with CI

* Add Type Group constants to abaplint

* Update constants and replace assert_true

* Revert constants

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-03 08:49:22 +01:00
Lars Hvam
c2492dd47e
delete unused methods (#4125)
* ZCL_ABAPGIT_REPO_FILTER

delete ZCL_ABAPGIT_REPO_FILTER->GET_PACKAGE
ZCL_ABAPGIT_REPO_FILTER delete MV_PACKAGE

* testclass, delete method given_fstate

* delete ZCL_ABAPGIT_GUI_PAGE_PATCH->IS_EVERY_CHANGE

delete method delete ZCL_ABAPGIT_GUI_PAGE_PATCH->IS_EVERY_CHANGED_LINE_PATCHED

* delete ZCL_ABAPGIT_OBJECTS_SUPER->CHECK_TIMESTAMP
2020-11-03 08:45:21 +01:00
Lars Hvam
df652f0436
delete various unused local variables (#4126) 2020-11-03 08:43:04 +01:00
Marc Bernard
f6cd2e12bd
Fix DDIC activation issues (#4111)
* Fix DDIC activation issues

- Avoid double activation of DDIC objects in case of "LATE" processing
- Derive DDIC id for XINX and MCID (same as for INDX)

Closes #4103

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-02 09:40:33 +01:00
Marc Bernard
e7b5281dde
Remove todo about unknown user id (#4113)
It's not feasible to use transports to determine who changed an object last (see https://github.com/abapGit/abapGit/pull/4056#issuecomment-719956576).

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-02 09:33:30 +01:00
Marc Bernard
20c1dc0bda
Remove obsolete late_deser from metadata (#4116)
The field `late_deser` in `ZIF_ABAPGIT_DEFINITIONS=>ty_metadata` is obsolete:

```abap
  TYPES:
    BEGIN OF ty_metadata,
      class        TYPE string,
      version      TYPE string,
      late_deser   TYPE abap_bool, " refactor: can be removed later. replaced by steps
      delete_tadir TYPE abap_bool,
      ddic         TYPE abap_bool,
    END OF ty_metadata .
```

The PR removes the remaining usage with one exception: `ZCL_ABAPGIT_OBJECTS_BRIDGE->GET_DESERIALIZE_STEPS` still depends on the field. In order to remove it completely, the plug-in interface `zif_abapgitp_plugin` (https://github.com/abapGit/abapGit-Plugins/blob/master/src/zif_abapgitp_plugin.intf.abap) will have to be changed.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-02 09:30:55 +01:00
Marc Bernard
dd37881589
702: Fix syntax error and missing check variant (#4117)
* 702: Downport 

No chaining with CHANGING

* 702: Downport

* Syntax check variant

* Too many fields warning

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-02 09:29:09 +01:00
Marc Bernard
bdc44f7476
Remove self-references (#4115)
* Remove self-references

Remove unnecessary self-references (me->)

https://github.com/SAP/styleguides/blob/master/clean-abap/CleanABAP.md#omit-the-self-reference-me-when-calling-an-instance-method

* 702: Fix syntax error

No chaining with EXPORTING & CHANGING

* remove addiontal me, update abaplint config

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-02 09:25:27 +01:00
Mike Pokraka
9cc515340a
Add option to specify own repo path (#4107)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-30 09:58:34 +01:00
Marc Bernard
92ba04d00e
TABL: Fix "exists" check (#4105)
Tables could exist in "new" (or other) version that is not included in nametab.
2020-10-30 09:53:54 +01:00
Philipp R
27aca4b382
Remove System Id from SOTR object type (#4104)
Co-authored-by: Rembold Rembold <philipp.rebold@sap.com>
2020-10-29 18:58:54 +01:00
Christian Günter
d14393dac5
TABL: Skip data check for GTTs (#4075)
* TABL: Skip data check for GTT

fixes #4074

* undo case change

* TABL: use fm DD_EXISTS_DATA for data check

* remove formatting change

* Data existence check only for DB tables

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-28 06:45:04 +01:00
Marc Bernard
caea4865bf
Integration of unit test with CI (#3993)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-27 08:15:52 +01:00
Frederik Hudák
d04b1b057c
DEVC - Clear obsolete fields (#4054)
* DEVC - Clear obsolete fields

* Remove on deserialize side
2020-10-22 19:04:41 +02:00
Lars Hvam
958c894d4b
issue #4032, downport (#4033) 2020-10-16 08:36:23 +02:00
Marc Bernard
4ebde6d1a3
CLAS: Avoid unnecessary serialize of testclasses include (#4013)
* CLAS: Avoid unnecessary serialize of testclass file

Unit tests are only functional if the corresponding flag is set (`seoclassdf-with_unit_tests`). Therefore, if the flag is not set, there's no need to serialize this include.

* Added version to select

* Switch to seo function

* Set  mv_skip_testclass

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-14 09:38:29 +02:00
Marc Bernard
5068e7553c
CLAS: Performance APACK (#4016)
- Replace `select count` with `select single`
- Remove unnecessary loops
- Keep SAP apack manifest during deserialize (if available)

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-13 16:49:21 +02:00
Lars Hvam
f6ad8c668d
XSLT, fix syntax error (#4019) 2020-10-13 16:06:55 +02:00
Marc Bernard
b2790bc1a2
XSLT: Fix activation sequence (#4017)
* XSLT: Fix activation sequence

Save first, then activate (and no need for activation queue)

* Add error handling
2020-10-13 10:43:23 +02:00
Marc Bernard
5a0acf7a5a
SHMA: Auto generate (#4005)
Automatically generate area class after deserializing. Closes https://github.com/abapGit/abapGit/issues/1201

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-09 13:13:22 +02:00
Marc Bernard
c0192df9ec
Close some minor ToDos (#3995)
* Close some todos 

FUGR does not have any class includes

* Remove huh?

* Move WDYN activation to serializer

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-09 13:11:24 +02:00
Marc Bernard
784975fefc
Update object serializer descriptions (#4006)
Helps to identify the object type of a serializer class

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-09 12:58:31 +02:00
Lars Hvam
7339e0ec47
delete ltcl_dangerous (#3984) 2020-10-07 09:02:36 +02:00
Marc Bernard
9672f5b030
Adjust name prefix for types (#3991)
* Part 1

* Part 2

* Part 3

* Lint

* Part 5

* Part 6

* Part 7

* Part 8

* Part 9

* Enforce type naming prefix

All types need to start with TY_...

* Fix local types
2020-10-07 08:54:15 +02:00
Harry Abrahams
6360ccd08a
Fix for SFPF Clear CACHE_INFO (#3954)
* Clear CACHE_INFO

#3868

* Indentation corrections

* Add Spaces for Parameters

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-05 16:44:28 +02:00
Marc Bernard
24436879b6
Improvements for uninstall (#3959)
* Improvements for uninstall

Uninstall now catches exceptions and tries up to 3 times to remove an object. Exceptions are only raised if after 3 tries some objects still remain. 

Tested with https://github.com/larshp/abapPGP

Closes https://github.com/abapGit/abapGit/issues/379 and https://github.com/abapGit/abapGit/issues/3949, and probably #3228

* Add SHLP

also ordered when by priority

* Conflict

* Move counter

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-03 09:17:11 +02:00
Marc Bernard
9704ce6708
Fix ZIF_ABAPGIT_OBJECT~EXISTS methods (#3967)
* Fix ZIF_ABAPGIT_OBJECT~EXISTS methods

* Fix EXISTS

* CMPT

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-02 10:23:00 +02:00
Marc Bernard
ef234a20fb
New object type CMOD - Customer Enhancement Project (#3947)
* New object type CMOD - Customer Enhancement Project

Test repo https://github.com/abapGit-tests/CMOD

* CMOD

* boolc

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

* Update src/objects/zcl_abapgit_object_cmod.clas.abap

Co-authored-by: g-back <27279305+g-back@users.noreply.github.com>

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: g-back <27279305+g-back@users.noreply.github.com>
2020-10-01 09:49:48 +02:00
Marc Bernard
1e93c1d3d3
Fix syntax errors in 702 (#3962)
Only relevant if trying to run dev version in 702
2020-09-29 19:28:42 +02:00
pokrakam
85fe733171
Object type PDTS - Workflow Task (#3711)
* Adapt trial code from christianguenter2

* Add changed_by

* Adapt trial code from christianguenter2

* Add changed_by

* Add unit test mock class

* Update unit tests

* Unit tests %26 lint fixes

* De-Linting

* More lint fixes

* More lint experimenting

* More de-linting

* Update unit tests

* Turnaround test (WIP)

* More XML turnaround testing

* Turnaround test now working

* Clean up code

* Enable experimental mode

If we want to merge into master, it will only run for daredevil experimentalists

* Update src/objects/zcl_abapgit_object_pdts.clas.testclasses.abap

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

* Update src/objects/zcl_abapgit_object_pdts.clas.abap

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

* 702 compatibility

* More 702 compatibility

* Removed container texts and system elements

Temporary(?) measure as they are being too troublesome, changing XML on successive serializations and suchlike.

* Caught exception

* General refactoring

* Remove NOTEXT pragmas and directives

* De-linting

* Remove diff in transport class

* Refactoring WIP

* Refactoring - WIP

* Refactor serialization

* De-lint

* Update container serialization

* Refactor deserialization WIP

* Object type PDTS - Workflow Task (experimental)

* Object PDTS Alpha version

* De-lint

* Correct CI dependency issues

* Check for critical unit test setting

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-29 07:41:35 +02:00
Marc Bernard
404a08fdb2
New object type WDCA - Web Dynpro Application Configuration (#3941)
* WDCA

* WDCA

* Dependencies

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-29 07:35:32 +02:00
Marc Bernard
1f3abfd8ec
New object type AVAR - Activation Variant (#3944)
* AVAR

* AVAR

* Delete zcl_abapgit_object_avar.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-27 11:15:29 +02:00
Marc Bernard
b940572f2a
Fix deserialize of TABL with foreign keys (#3945)
Activation of foreign keys now uses with same logic as #3545:
- remove keys during DDIC phase
- add keys during LATE phase

Closes #3867

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-27 11:12:15 +02:00
Marc Bernard
dc9773bee9
Fix handling of T100 exceptions (#3943)
* Fix errors raised during deletion

* Fix error handler

* Harmonize top and bottom message banners

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-27 10:56:08 +02:00
Lars Hvam
1c1b04fbe9
update lint config, minor refactors (#3948) 2020-09-27 09:24:31 +02:00
Lars Hvam
fff8f1b237
new URL, updates (#3936)
* Update build.yml

* docs, update urls

* code, update links
2020-09-24 09:42:52 +02:00
Lars Hvam
03724484f1
use boolc (#3920) 2020-09-23 12:28:13 +02:00
Marc Bernard
df0eaf32ce
SHI3: Deserialized buffermode (#3923) 2020-09-22 08:17:28 +02:00
Lars Hvam
015800b45b
Less DDIC references (#3905)
* remove uses of CHAR30

* Update abaplint.json

* add basic unit test for ZCL_ABAPGIT_MESSAGE_HELPER

* replace uses of char50

* fix name

* Update abaplint.json

* use sy-uname instead of uname

in ZCL_ABAPGIT_USER_MASTER_RECORD
2020-09-21 07:39:22 +02:00
Marc Bernard
c264588ab2
SHI3: Fix "IMG structure ID still used" (#3901)
Follow-up

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-19 07:59:21 +02:00
Fabian Lupa
143a7ccc1c
Downport, fixes #3897 (#3899) 2020-09-19 07:54:36 +02:00
g-back
7871d23fef
XML Input/Output: Remove Aliases (#3898)
* change XML reference to interface

* remove aliases from XML in/out classes

* change XML references to interfaces
2020-09-18 14:01:44 +02:00
g-back
c05af1163f
XML Refactoring: zif_abapgit_object et al. (#3895)
* change xml references

* change xml reference, remove type definition


deleted type already exists in zif_abapgit_definitions

* change XML references

* change indentation

* fix indentation

* fix ident pt. 3

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-17 17:24:32 +02:00
Lars Hvam
b4169ff4b6
update lint config, plus remove identical condition (#3892) 2020-09-16 15:51:12 +02:00
g-back
6f8147036e
XML Refactoring: Various Objects (#3891)
* change xml references

* change xml reference
2020-09-16 15:23:14 +02:00
g-back
4dde63360e
XML Refactoring: Comparator/OO_Object_FNC (#3888)
* change xml references to interfaces


changed reference in interfaces:
- zif_abapgit_comparator
- zif_abapgit_oo_object_fnc

* change reference of xml in dependent objects

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-16 12:43:40 +02:00
g-back
b5b947bfe7
change reference from xml classes to interfaces (#3885)
changed refs in:
- zif_abapgit_longtext
- zif_abapgit_object_enhs

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-15 08:21:32 +02:00
Lars Hvam
5b93872199
reduce existing string templates (#3886) 2020-09-15 08:14:42 +02:00
g-back
c69e045057
change ref of xml class to intf in enho interface (#3884)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-14 12:57:04 +02:00
Marc Bernard
53bb303272
SHI3: Fix "IMG structure ID still used" (#3873)
Closes #3869

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-12 05:18:16 +02:00
Marc Bernard
69fa5655c8
PROG: Add program class to deserialize (#3874)
Closes https://github.com/larshp/abapGit/issues/3870
2020-09-11 16:42:01 +02:00
Lars Hvam
42a532b9eb
reduce usage of ddic types (#3859)
* add SAP_BOOL as forbidden void type

* reduce

* Update abaplint.json

* sychar10

* sylangu

* Update abaplint.json
2020-09-10 15:30:25 +02:00
Marc Bernard
b0d1d04ade
Automatically repair ZCX_ABAPGIT_EXCEPTION (#3840)
* Automatically repair ZCX_ABAPGIT_EXCEPTION

See #3833

* Add TODO

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-06 09:11:19 +02:00