Release Notes for Grouper 2.2

Grouper v2.2.2 includes 56 fixes and improvements over v2.2.1. See the full list in Jira

Grouper v2.2.1 includes 55 fixes and improvements over v2.2.0. See the full list in Jira

Grouper v2.2.0 includes 56 fixes and improvements over v2.1.5. See the full list in Jira.

New Features in Grouper 2.2.2

Admin groups

Readonly and viewonly admin groups

L oader

Grouper loader failsafe threshold

New Features in v2.2.1

Grouper upgrader

Automatically upgrade Grouper to the latest version.

Loader performance improvements

New indexes and loader jobs run in threads.

AWS SNS/SQS and encryption for ESB

ESB improvements with compatibility for AWS messaging

New Features in v2.2.0

New UI

There is a new more usable UI which makes Grouper easy to use by end users and administrators. It co-exists with the legacy Admin UI and the Lite UIs.

Legacy attribute migration

Migrate from legacy attributes to the new attribute framework in a transparent way.  The API, WS, and UI work similar as they did before.

SCIM events

SCIM events can be sent from Grouper to keep SCIM compatible systems in sync with Grouper.

Improved configuration

Grouper config files can have hierarchical overlays to make Grouper easier to deploy and upgrade across multiple environments.

Unix GID management

Grouper objects now have a unique integer ID which can be used in GID management

Services in Grouper

Ability to tag folders in Grouper (via the attribute framework) so that folders, groups, permissions can be grouped into a "service".  The API/UI/WS can filter search results based on the service to make it easier for users to perform tasks in Grouper.

For more information about upcoming plans, see the Grouper Product Roadmap.

Many other fixes and improvements were also made to all components of the Grouper Toolkit: Grouper API, Administrative & Lite UIs, Grouper Web Services, Grouper Client, Grouper Shell, Grouper Loader, PSP, and the Subject API.


v2.2.2 patches

Grouper patching instructions (how to install patches with the Grouper installer)

note: if a java file is included in a patch, then all associated classfiles are there too

Patch

Description

Files affected

grouper_v2_2_2_api_patch_0

GRP-1212: if a loader job has subject problems then it should be reflected in GSH and UI (give error)

classes/edu/internet2/middleware/grouper/app/loader/GrouperLoader.java

grouper_v2_2_2_api_patch_1

GRP-1213: null pointer in ldap subject

classes/edu/internet2/middleware/subject/provider/LdapSubject.java

grouper_v2_2_2_api_patch_2

GRP-1227: security issue with subject api init params

classes/edu/internet2/middleware/subject/Source.java
classes/edu/internet2/middleware/subject/provider/SourceManager.java
classes/edu/internet2/middleware/subject/provider/JDBCSourceAdapter.java
classes/edu/internet2/middleware/subject/LazySource.java
classes/edu/internet2/middleware/subject/provider/LdapSourceAdapter.java
classes/edu/internet2/middleware/subject/provider/JDBCSourceAdapter2.java
classes/edu/internet2/middleware/subject/provider/JNDISourceAdapterLegacy.java
classes/edu/internet2/middleware/subject/provider/BaseSourceAdapter.java
classes/edu/internet2/middleware/grouper/GrouperSourceAdapter.java
classes/edu/internet2/middleware/subject/provider/SubjectImpl.java

grouper_v2_2_2_api_patch_3

GRP-1231: hook to assure that only one group in a folder contains a member

classes/edu/internet2/middleware/grouper/hooks/examples/MembershipOneInFolderMaxHook.java
classes/ehcache.example.xml
classes/edu/internet2/middleware/grouper/attr/finder/AttributeDefNameFinder.java
classes/edu/internet2/middleware/grouper/misc/GrouperCheckConfig.java

grouper_v2_2_2_api_patch_4

GRP-1232: member change subject tries to update effective membership

classes/edu/internet2/middleware/grouper/Member.java

grouper_v2_2_2_api_patch_5

GRP-1235: stop checking java version since grouper works with java7 and java8

classes/edu/internet2/middleware/grouper/misc/GrouperStartup.java
classes/grouper.base.properties

grouper_v2_2_2_api_patch_6

GRP-1242: fine-grained diagnostic per loader job

classes/edu/internet2/middleware/grouper/j2ee/status/GrouperStatusServlet.java
classes/edu/internet2/middleware/grouper/j2ee/status/DiagnosticTask.java
classes/edu/internet2/middleware/grouper/j2ee/status/DiagnosticLoaderJobTest.java
classes/edu/internet2/middleware/grouper/j2ee/status/DiagnosticType.java

grouper_v2_2_2_api_patch_7

GRP-1247: subject jarfile mismatch in 2.2.2

classes/edu/internet2/middleware/grouper/misc/GrouperCheckConfig.java

grouper_v2_2_2_api_patch_8

GRP-1246: grouper rules privilege inheritance from stem error

classes/edu/internet2/middleware/grouper/internal/dao/hib3/Hib3GroupDAO.java

grouper_v2_2_2_api_patch_9

GRP-1237: export to GSH commands

classes/edu/internet2/middleware/grouper/internal/dao/AttributeAssignValueDAO.java
classes/edu/internet2/middleware/grouper/externalSubjects/ExternalSubject.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportMembership.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportAttributeDefName.java
classes/edu/internet2/middleware/grouper/attr/AttributeDefSave.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportGroup.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportAttributeDef.java
classes/edu/internet2/middleware/grouper/xml/importXml/XmlImportMain.java
classes/edu/internet2/middleware/grouper/attr/AttributeDefNameSave.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportAttributeAssignAction.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportAttributeAssign.java
classes/edu/internet2/middleware/grouper/hooks/examples/GrouperAttributeAssignValueRulesConfigHook.java
classes/edu/internet2/middleware/grouper/group/CompositeSave.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportAttributeDefNameSet.java
classes/edu/internet2/middleware/grouper/app/gsh/GrouperShell.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportRoleSet.java
classes/edu/internet2/middleware/grouper/externalSubjects/ExternalSubjectAttribute.java
classes/edu/internet2/middleware/grouper/attr/value/AttributeAssignValueDelegate.java
classes/edu/internet2/middleware/grouper/attr/value/AttributeAssignValue.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportComposite.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportMain.java
classes/edu/internet2/middleware/grouper/subj/GrouperSubject.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportGshScript.java
classes/edu/internet2/middleware/grouper/GroupSave.java
classes/edu/internet2/middleware/grouper/util/GrouperUtil.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportAttributeAssignActionSet.java
classes/edu/internet2/middleware/grouper/attr/assign/AttributeDefActionDelegate.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportAttributeDefScope.java
classes/edu/internet2/middleware/grouper/attr/assign/AttributeAssignSave.java
classes/edu/internet2/middleware/grouper/internal/dao/hib3/Hib3AttributeAssignValueDAO.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportStem.java
classes/edu/internet2/middleware/grouper/attr/assign/AttributeAssign.java
classes/edu/internet2/middleware/grouper/xml/export/XmlExportAttributeAssignValue.java
classes/edu/internet2/middleware/grouper/StemSave.java

grouper_v2_2_2_api_patch_10

GRP-1258: grouper export to gsh causes problem in attribute assign due to method signature change

classes/edu/internet2/middleware/grouper/attr/value/AttributeAssignValue.java

grouper_v2_2_2_api_patch_11

GRP-1308: grouper_ddl is slow due to selecting * from every table/view

classes/edu/internet2/middleware/grouper/ddl/GrouperDdlUtils.java

grouper_v2_2_2_ui_patch_0

GRP-1212: if a loader job has subject problems then it should be reflected in GSH and UI (give error)

classes/grouperText/grouper.text.en.us.base.properties
classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2Group.java
classes/edu/internet2/middleware/grouper/grouperUi/beans/ui/GroupContainer.java

grouper_v2_2_2_ui_patch_1

GRP-1215: unfriendly error when assigning privs and not have admin

classes/grouperText/grouper.text.en.us.base.properties
classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2Subject.java
files/WEB-INF/grouperUi2/group/groupHeader.jsp

grouper_v2_2_2_ui_patch_2

GRP-1108: option to not show links to admin ui and lite ui

files/WEB-INF/grouperUi2/index/index.jsp
files/WEB-INF/grouperUi2/group/groupMoreActionsButtonContents.jsp
classes/edu/internet2/middleware/grouper/grouperUi/beans/ui/IndexContainer.java
classes/grouper-ui.base.properties

grouper_v2_2_2_ui_patch_3

GRP-838: make grouper ui/ws work with tomcat6 and tomcat7 and tomcat8

files/WEB-INF/jsp/dynamicTile.jsp

grouper_v2_2_2_ui_patch_4

GRP-1222: xss vulnerability in tooltips in new UI

classes/grouperText/grouper.text.en.us.base.properties

grouper_v2_2_2_ui_patch_5

GRP-1244: Opt-Out group not displayed in My memberships in new ui

classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2MyGroups.java
classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2Main.java

grouper_v2_2_2_ui_patch_6

GRP-1838: xsrf problem with /UiV2Public.index

classes/edu/internet2/middleware/grouper/grouperUi/beans/ui/TextContainer.java


v2.2.1 patches

Grouper patching instructions (how to install patches with the Grouper installer)

note: if a java file is included in a patch, then all associated classfiles are there too

Patch

Description

Files affected

grouper_v2_2_1_api_patch_0

GRP-1095: hibernate exception handling masked original exception if rolling back transaction

classes/edu/internet2/middleware/grouper/hibernate/HibernateSession.java

grouper_v2_2_1_api_patch_1

GRP-1096: Use threads for 2.2 upgrade to decrease time of upgrade

classes/edu/internet2/middleware/grouper/internal/dao/hib3/Hib3StemSetDAO.java
classes/edu/internet2/middleware/grouper/misc/MigrateLegacyAttributes.java
classes/edu/internet2/middleware/grouper/misc/AddMissingGroupSets.java
classes/edu/internet2/middleware/grouper/misc/SyncPITTables.java
classes/edu/internet2/middleware/grouper/misc/SyncStemSets.java
classes/grouper.base.properties

grouper_v2_2_1_api_patch_2

GRP-1083: cannot set enabled/disabled dates in ui

classes/edu/internet2/middleware/grouper/Group.java

grouper_v2_2_1_api_patch_3

GRP-1100 grouper new ui not showing unresolvable subjects correctly

classes/edu/internet2/middleware/grouper/membership/MembershipSubjectContainer classes/edu/internet2/middleware/grouper/subj/LazySubject
classes/edu/internet2/middleware/grouper/subj/UnresolvableSubject

grouper_v2_2_1_api_patch_4GRP-1109: problems with inherited privileges ruleclasses/edu/internet2/middleware/grouper/rules/RuleThenEnum
grouper_v2_2_1_api_patch_5GRP-1112: problems with 'edit memberships and privileges' buttonclasses/edu/internet2/middleware/grouper/Group
classes/edu/internet2/middleware/grouper/entity/EntitySourceAdapter
classes/edu/internet2/middleware/grouper/subj/UnresolvableSubject
classes/edu/internet2/middleware/grouper/membership/MembershipPathGroup.java
classes/edu/internet2/middleware/subject/SubjectUtils
classes/edu/internet2/middleware/subject/provider/SubjectImpl
grouper_v2_2_1_api_patch_6GRP-1126: grouper import xml fails on attribute owner stem id

classes/edu/internet2/middleware/grouper/attr/assign/AttributeAssign.java 

grouper_v2_2_1_api_patch_7GRP-1134: add hook to make sure names of different types of objects are unique (group, stem, attribute, attribute definition)classes/edu/internet2/middleware/grouper/hooks/examples/UniqueObjectAttributeDefHook
classes/edu/internet2/middleware/grouper/hooks/examples/UniqueObjectAttributeDefNameHook
classes/edu/internet2/middleware/grouper/hooks/examples/UniqueObjectGroupHook
classes/edu/internet2/middleware/grouper/hooks/examples/UniqueObjectStemHook
grouper_v2_2_1_api_patch_8GRP-1130: grouper loader should have configuration to not make changes (but log error) if too many removesclasses/grouper-loader.base.properties
classes/edu/internet2/middleware/grouper/app/loader/GrouperLoaderType 
grouper_v2_2_1_api_patch_9

GRP-1128: Non-english chars dont seem to render correctly

See documentation here

classes/grouper.base.properties
classes/grouperUtf8.txt
classes/edu/internet2/middleware/grouper/ddl/GrouperDdlUtils
classes/edu/internet2/middleware/grouper/misc/GrouperStartup.java 
grouper_v2_2_1_api_patch_10GRP-1132: option to auto delete empty loader groups used in other groupsclasses/grouper-loader.base.properties
classes/grouper/edu/internet2/middleware/grouper/hooks/examples/GroupTypeTupleIncludeExcludeHook
grouper_v2_2_1_api_patch_11GRP-1139: PSP doesn't support configs with multiple classes in a Grouper Hook definitionclasses/edu/internet2/middleware/grouperClient/config/ConfigPropertiesCascadeBase
grouper_v2_2_1_api_patch_12GRP-1137: Group copy with new group extension

classes/edu/internet2/middleware/grouper/Group

classes/edu/internet2/middleware/grouper/GroupCopy

classes/edu/internet2/middleware/grouper/Stem

grouper_v2_2_1_api_patch_13

GRP-1138: add import / export auditing

classes/edu/internet2/middleware/grouper/audit/AuditTypeBuiltin.java

grouper_v2_2_1_api_patch_14GRP-1140: Virtual attributes for subject name and description

classes/edu/internet2/middleware/grouper/helper/DummySubject.java

classes/edu/internet2/middleware/grouper/subj/GrouperSubject.java

classes/edu/internet2/middleware/grouper/subj/InternalSourceAdapter.java

classes/edu/internet2/middleware/subject/provider/JDBCSourceAdapter.java

classes/edu/internet2/middleware/subject/provider/JDBCSourceAdapter2.java

classes/edu/internet2/middleware/subject/provider/LdapSourceAdapter.java

classes/edu/internet2/middleware/subject/provider/LdapSubject.java

classes/edu/internet2/middleware/subject/provider/SubjectImpl.java

grouper_v2_2_1_api_patch_15GRP-1143: Selective LDAP Provisioning

classes/edu/internet2/middleware/grouper/hooks/examples/LDAPProvisioningHook.java

classes/grouper.base.properties

grouper_v2_2_1_api_patch_16

GRP-1094: Upgrade from v2.2.0 to v2.2.1 recreates views/constraints

classes/edu/internet2/middleware/grouper/ddl/DdlVersionable.java
classes/edu/internet2/middleware/grouper/ddl/GrouperDdl.java
classes/edu/internet2/middleware/grouper/ddl/GrouperOrgDdl.java
classes/edu/internet2/middleware/grouper/ddl/GrouperTestDdl.java
classes/edu/internet2/middleware/grouper/ddl/SubjectDdl.java

grouper_v2_2_1_api_patch_17

GRP-1091: ldap loader display name doesnt change

classes/grouper-loader.base.properties
classes/edu/internet2/middleware/grouper/app/loader/GrouperLoaderType.java

grouper_v2_2_1_api_patch_18

GRP-1151: subject api needs ability to use ldap.properties for vt-ldap

classes/edu/internet2/middleware/subject/provider/LdapSourceAdapter.java

grouper_v2_2_1_api_patch_19

GRP-1153: Audit Log should show Engine/Type as Loader

classes/edu/internet2/middleware/grouper/util/GrouperThreadLocalState.java
classes/edu/internet2/middleware/grouper/hibernate/HibernateSession.java
classes/edu/internet2/middleware/grouper/hibernate/GrouperContext.java
classes/edu/internet2/middleware/grouper/app/loader/GrouperLoader.java
classes/edu/internet2/middleware/grouper/util/GrouperCallable.java

grouper_v2_2_1_api_patch_20

GRP-1171: Show friendly error if importing an old xml export to grouper 2.2

classes/edu/internet2/middleware/grouper/xml/importXml/XmlImportGsh.java

grouper_v2_2_1_api_patch_21

GRP-1170: Encountering SourceUnavailableException while running USDU

classes/edu/internet2/middleware/grouper/app/usdu/USDU.java
classes/edu/internet2/middleware/grouper/app/usdu/TestUSDU.java

classes/grouper.base.properties

grouper_v2_2_1_api_patch_22

GRP-1089: add grouper admin groups for readonly and viewonly

classes/edu/internet2/middleware/grouper/privs/WheelNamingResolver.java
classes/grouper.base.properties
classes/edu/internet2/middleware/grouper/privs/WheelAttrDefResolver.java
classes/edu/internet2/middleware/grouper/misc/GrouperCheckConfig.java
classes/edu/internet2/middleware/grouper/privs/WheelCache.java
classes/edu/internet2/middleware/grouper/privs/WheelAccessResolver.java

grouper_v2_2_1_api_patch_23

GRP-1091: ldap loader display name doesnt change

classes/edu/internet2/middleware/grouper/Group.java

grouper_v2_2_1_api_patch_24

GRP-1183: status servlet gives error if loader job is not configured

classes/edu/internet2/middleware/grouper/j2ee/status/DiagnosticType.java

grouper_v2_2_1_api_patch_25

GRP-1188: print an error if Grouper is used with invalid version of Java

classes/edu/internet2/middleware/grouper/misc/GrouperStartup.java
classes/grouper.base.properties

grouper_v2_2_1_ui_patch_0

GRP-1080: browse folders refresh button only works in chrome, not other browsers

files/WEB-INF/grouperUi2/index/index.jsp

grouper_v2_2_1_ui_patch_1

GRP-1082: grouper paging tag2 has one word not externalized

classes/edu/internet2/middleware/grouper/ui/tags/GrouperPagingTag2
classes/grouperText/grouper.text.en.us.base.properties

grouper_v2_2_1_ui_patch_2

GRP-1086: extra system out print in ui

classes/edu/internet2/middleware/grouperClient/config/GrouperUiTextConfig

grouper_v2_2_1_ui_patch_3

Empty patch due to refactor


grouper_v2_2_1_ui_patch_4

GRP-1087: edit membership page shows large H as icon in title

files/WEB-INF/grouperUi2/membership/editMembership.jsp
files/WEB-INF/grouperUi2/membership/traceAttributeDefPrivileges.jsp
files/WEB-INF/grouperUi2/membership/traceMembership.jsp
files/WEB-INF/grouperUi2/membership/tracePrivileges.jsp
files/WEB-INF/grouperUi2/membership/traceStemPrivileges.jsp

grouper_v2_2_1_ui_patch_5

GRP-1088: attribute def left menu link throws error

files/grouperExternal/public/assets/js/grouperUi.js

grouper_v2_2_1_ui_patch_6

GRP-1097: grouper logout management

classes/grouper-ui.base.properties
classes/ edu/internet2/middleware/grouper/ui/actions/LogoutAction.java
classes/ edu/internet2/middleware/grouper/ui/util/GrouperUiUtils.java
classes/ edu/internet2/middleware/grouper/grouperUi/serviceLogic/Misc.java
files/ WEB-INF/grouperUi2/index/index.jsp

grouper_v2_2_1_ui_patch_7

GRP-1100 grouper new ui not showing unresolvable subjects correctly

classes/grouperText/grouper.text.en.us.base.properties
classes/edu/internet2/middleware/grouper/grouperUi/beans/api/GuiSubject.java
files/WEB-INF/grouperUi2/stem/stemPrivilegeContents.jsp

grouper_v2_2_1_ui_patch_8GRP-1109: problems with inherited privileges rule

classes/edu/internet2/middleware/grouper/ui/actions/SaveStemAction.java
files/WEB-INF/jsp/stemLinks.jsp

grouper_v2_2_1_ui_patch_9GRP-1112: problems with 'edit memberships and privileges' button

classes/edu/internet2/middleware/grouper/grouperUi/beans/api/GuiGroup.java
classes/edu/internet2/middleware/grouper/grouperUi/beans/api/GuiMembershipContainer.java
classes/edu/internet2/middleware/grouper/grouperUi/beans/api/GuiObjectBase.java
classes/edu/internet2/middleware/grouper/grouperUi/beans/api/GuiSubject.java
classes/grouperText/grouper.text.en.us.base.properties
files/WEB-INF/grouperUi2/externalEntities/invite.jsp
files/WEB-INF/grouperUi2/group/groupContents.jsp
files/WEB-INF/grouperUi2/group/groupMoreActionsButtonContents.jsp
files/WEB-INF/grouperUi2/group/groupPrivilegeContents.jsp
files/WEB-INF/grouperUi2/group/thisGroupsGroupPrivilegesContents.jsp
files/WEB-INF/grouperUi2/group/thisGroupsMembershipsContents.jsp
files/WEB-INF/grouperUi2/group/viewGroup.jsp 

files/WEB-INF/grouperUi2/membership/editMembership.jsp
files/WEB-INF/grouperUi2/subject/subjectContents.jsp 
grouper_v2_2_1_ui_patch_10GRP-1114: cant assign privs to composite group

files/WEB-INF/grouperUi2/group/groupHeader.jsp 

grouper_v2_2_1_ui_patch_11GRP-1111: if you leave a group via UI and leaving revokes view privs (or others), dont throw error

classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2Group

grouper_v2_2_1_ui_patch_12GRP-1117: grouper new ui tooltips wrap

classes/grouperText/grouper.text.en.us.base.properties
files/grouperExternal/public/assets/css/grouperUi2.css

grouper_v2_2_1_ui_patch_13GRP-1124: put composite info on membership list

classes/grouperText/grouper.text.en.us.base.properties
files/grouperExternal/public/assets/css/grouperUi2.css
files/WEB-INF/grouperUi2/group/viewGroup.jsp
files/WEB-INF/grouperUi2/group/thisGroupsMemberships.jsp
classes/grouper-ui.base.properties

grouper_v2_2_1_ui_patch_14GRP-1131: add button to UI for loader group admins to refresh the group from the system of record

classes/grouperText/grouper.text.en.us.base.properties
files/grouperExternal/public/assets/css/grouperUi2.css
files/WEB-INF/grouperUi2/group/groupMoreActionsButtonContents.jsp
classes/grouper-ui.base.properties
classes/edu/internet2/middleware/grouper/grouperUi/beans/api/GuiGroup.java
classes/edu/internet2/middleware/grouper/grouperUi/beans/ui/GroupContainer
classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2Group

grouper_v2_2_1_ui_patch_15GRP-1133: this groups memberships in new ui fails if effective only memberships and wont remove memberships

classes/edu/internet2/middleware/grouper/grouperUi/beans/api/GuiMembershipContainer
files/WEB-INF/grouperUi2/group/thisGroupsMembershipsContents.jsp

grouper_v2_2_1_ui_patch_16GRP-1134: add hook to make sure names of different types of objects are unique (group, stem, attribute, attribute definition)classes/edu/internet2/middleware/grouper/ui/util/GrouperUiUtils
classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2Stem
classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2Group
classes/grouperText/grouper.text.en.us.base.properties
grouper_v2_2_1_ui_patch_17GRP-1107: default stem for new uiclasses/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2Main
grouper_v2_2_1_ui_patch_18GRP-1137: Group copy with new group extensionclasses/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2Group
grouper_v2_2_1_ui_patch_19GRP-1138: add import / export auditing

classes/grouperText/grouper.text.en.us.base.properties
classes/edu/internet2/middleware/grouper/grouperUi/beans/ui/GuiAuditEntry
classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/SimpleMembershipUpdateImportExport
classes/edu/internet2/middleware/grouper/grouperUi/serviceLogic/UiV2GroupImport

grouper_v2_2_1_ui_patch_20

GRP-1152: my group memberships hitting enter doesnt work

files/WEB-INF/grouperUi2/myGroups/myGroupsMemberships.jsp

grouper_v2_2_1_ui_patch_21

GRP-1089: add grouper admin groups for readonly and viewonly

classes/edu/internet2/middleware/grouper/ui/actions/LowLevelGrouperCapableAction.java

grouper_v2_2_1_ws_patch_0GRP-1135: allow move and copy for groups and folders from WSclasses/edu/internet2/middleware/grouper/ws/GrouperServiceLogic
classes/edu/internet2/middleware/grouper/ws/coresoap/WsStemToSave
classes/edu/internet2/middleware/grouper/ws/coresoap/WsGroupToSave

See Also

Grouper Downloads

Grouper Changes v2.2