Before this commit is applied DDLX source code was recorded
in the xml file. We changed this so that now a separte .asddls
file is created. The change is downward compatible. Previously
recorded DDLX objects will show a diff the next time and the new
.asddls file has to be committed.
* add smart response checks for ref discovery
Added content-type check and content regex check for reference discovery
see https://github.com/schacon/igithub/blob/master/http-protocol.txt
* move ref check constants to TRANSPORT class
the check constants - content regex and responce Content-Type - don't have to be global right now so moved from zif_abapgit_definitionsto zcl_abapgit_git_transport
* PP and activate
* removed popup saving msag
* fixed capitalization
* refactored with variable prefixes
* refactored exceptions and split methods
also removed S messages.
Previous code was mostly copy %26 paste of the original
* Cleaned up
* more cleanup
* enable ADT jump from CI result
* enable ADT jump from CI result for all objects
* cleanup + PP
* cleanup + PP + save/activate in ADT
* remove commented code
git patch, added to staging page
serialize all longtexts
ENQU clear redundant fields
suppress SHMA package popup
branch overview sorted by parent instead of time
handle error from RS_CUA_INTERNAL_FETCH
fix problem with branch list from bitbucket.org
allow empty blobs
* Staging smaller chunks of code like git add -p
With this commit a new feature which works similar to git add -p
is added. We are now able to patch, which means that we can
commit on line basis. And are not restricted anymore to commit
only on file basis.
* move get_page_patch to stage page
* Refactor JS
* Refactor JS
* objects: use a different constant for 'R3TR'
The constant rs_c_pgmid_r3tr comes from the package RS which is not
available in pure BASIS systems.
The constant seok_pgmid_r3tr comes from the package SEOK and abapGit is
already using another constants from this package - seok_access_*.
Related to #1826
* objects: replace rs_c_true with abap_true
The constant rs_c_true comes from the package RS which is no available
in pure BASIS systems.
I believe that the constant rs_c_true was used by mistake.
The constant was assigned to a variable which is of the type abap_bool
and the variable is initialized with abap_false.
Related to #1826
With this commit the hotkey 'd' for diff always shows the
global diff. Previously only the last file diff was shown.
We changed the implementation so that the first matched href
specified by the hotkey is called.
This commit adds three new methods to ZCL_ABAPGIT_OBJECTS_SUPER:
- SERIALIZE_LONGTEXTS
- DESERIALIZE_LONGTEXTS
- DELETE_LONGTEXTS
They can be called on demand in concrete object type serializers.
In this commit they were called from DTEL, DOMA and TABL
* Insert initial line before bothsequence and action
* Change settings boolean read to support Java GUI
Standard netweaver and Java GUI netweaver parse differently the checkboxes on HTML pages. This commit consider the value on the checkbox aseither "on" or "X".
With this commit we are able to define global hotkeys. Which means
that the hotkey is active on all pages. The global hotkeys are
defined in ZCL_ABAPGIT_GUI_PAGE=>GET_HOTKEY_ACTIONS. The first
globally defined hotkey is the hotkey overview with the default
hotkey '?' assigned to it. This was previously hard coded in the js.
* Introduce customizable hotkeys
With this commit customizable hotkeys are introduced. They can
be defined in the user specific settings. Currently we support
only one letter keybindigs e.g. 's', 't' or 'x' and no modifiers.
Every page in the UI can decide which actions it offers for the
hotkeys. Therefore we introduce the interface ZIF_ABAPGIT_GUI_PAGE_HOTKEY
with the method GET_HOTKEY_ACTIONS. At this point in time only
the main page offers actions for hotkeys, but the mechanism works
already for all pages. New actions for hotkeys can be defined
easily.
Hotkeys are only available for installed abapGit repositories.
Because we need to detect the classes which implement the above
mentioned interface and it seems that there is no easy way to do
that for local classes. Maybe we can add it later when we know more.
We don't supply default key bindings. So it is totally up to the
user to define them.
* provide default hotkeys
Refactoring
Downport
Descriptions in new online popup
Optimized git object handling
SSST package popup fixed
PARA popup fixed
Package validations
Diff still shows after pushing
TABL field ROWORCOLST cleared
Staging page optimizations
Correct CUA if needed during pull
* correct xml errors of CUA interfaces
Issue error RS_CUA_INTERNAL_WRITE while pulling an old abapgit repository #1807. Same issue as #562 (error RS_CUA_INTERNAL_WRITE) which is solved by correcting manually the XML of the CUA interfaces (fastidious), or by regenerating the XML (but unfortunately sometimes the abapGit repository is from someone else).
Automatically fix this before RS_CUA_INTERNAL_WRITE is called. It's useless having this as a configuration option.
* refactor: extract code to a new method
* Better refactoring of auto correction CUA
When we try to add a new online repository and we have a repository
whose package does not exist in abapGit we get a short dump caused
by assert in the method zif_abapgit_sap_package~read_parent of
the class zcl_abapgit_sap_pacakge.
This commit makes sure we skip such repositories because we believe it
does not make sense to prevent us from cloning in these cases.
Thank you Petr Benes <petr.benes@sap.com>!
https://github.com/larshp/abapGit/issues/1575
Deletion of PARA caused a popup in FM RS_PARAMETER_DELETE.
To avoid that, the logic of the FM had to be implemented directly in the delete method.
* Optimized git object handling
- Introduced secondary indices for ZIF_ABAPGIT_DEFINITIONS=>TY_OBJECTS_TT to allow fast access to git objects by SHA1 and TYPE
- Added a new column INDEX to ZIF_ABAPGIT_DEFINITIONS=>TY_OBJECT to allow reconstruction of the correct sort order of git objects when after processing in ZCL_ABAPGIT_GIT_PACK
- Optimized git object accesses in ZCL_ABAPGIT_GIT_PACK, ZCL_ABAPGIT_GIT_PORCELAIN and ZCL_ABAPGIT_MERGE by using the newly introduced indices
* Removed excess fields
Removed excess fields from secondary index definitions of ´ty_objects_tt´, since they are not required.