* 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>
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
* 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>
* 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>
* 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>
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>
* 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>
* 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>
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>
* 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
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.
* 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>
* 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>
* 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>
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>
* 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>
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.
* 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>
* 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
* 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>
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>
* 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>
* 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>
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).
* Fix#4515Fix#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>
* 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>
* 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>