Skip to content

Commit e7e11c8

Browse files
SmitaNachanAdam-it
authored andcommitted
Removed yammer command aliases. Closes #5764
1 parent 7150970 commit e7e11c8

File tree

48 files changed

+49
-643
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+49
-643
lines changed

docs/docs/cmd/cli/cli-consent.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ m365 cli consent [options]
1616

1717
```md definition-list
1818
`-s, --service <service>`
19-
: Service for which to consent permissions. Allowed values: `VivaEngage`, (deprecated)`yammer`.
19+
: Service for which to consent permissions. Allowed values: `VivaEngage`.
2020
```
2121

2222
<Global />

docs/docs/v10-upgrade-guidance.mdx

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,3 +174,37 @@ Overwriting the SPFx package should be the default behavior of the continuous de
174174
#### What action do I need to take?
175175

176176
Please update your scripts not to use the `overwrite` option.
177+
178+
## Yammer (Viva Engage)
179+
180+
### Removal of deprecated Yammer aliases
181+
182+
We have removed all deprecated `Yammer` command aliases. These aliases were introduced in the previous version to prevent the introduction of breaking changes. Since Yammer has been renamed to Viva Engage a while ago, the following aliases were removed:
183+
184+
Alias | Command
185+
--|--
186+
`yammer search` | [viva engage search](./cmd/viva/engage/engage-search.mdx)
187+
`yammer group list` | [viva engage group list](./cmd/viva/engage/engage-group-list.mdx)
188+
`yammer group user add` | [viva engage group user add](./cmd/viva/engage/engage-group-user-add.mdx)
189+
`yammer group user remove` | [viva engage group user remove](./cmd/viva/engage/engage-group-user-remove.mdx)
190+
`yammer message add` | [viva engage message add](./cmd/viva/engage/engage-message-add.mdx)
191+
`yammer message get` | [viva engage message get](./cmd/viva/engage/engage-message-get.mdx)
192+
`yammer message list` | [viva engage message list](./cmd/viva/engage/engage-message-list.mdx)
193+
`yammer message remove` | [viva engage message remove](./cmd/viva/engage/engage-message-remove.mdx)
194+
`yammer message like set` | [viva engage message like set](./cmd/viva/engage/engage-message-like-set.mdx)
195+
`yammer network list` | [viva engage network list](./cmd/viva/engage/engage-network-list.mdx)
196+
`yammer report activitycounts` | [viva engage report activitycounts](./cmd/viva/engage/engage-report-activitycounts.mdx)
197+
`yammer report activityusercounts` | [viva engage report activityusercounts](./cmd/viva/engage/engage-report-activityusercounts.mdx)
198+
`yammer report activityuserdetail` | [viva engage report activityuserdetail](./cmd/viva/engage/engage-report-activityuserdetail.mdx)
199+
`yammer report deviceusagedistributionusercounts` | [viva engage report deviceusagedistributionusercounts](./cmd/viva/engage/engage-report-deviceusagedistributionusercounts.mdx)
200+
`yammer report deviceusageusercounts` | [viva engage report deviceusageusercounts](./cmd/viva/engage/engage-report-deviceusageusercounts.mdx)
201+
`yammer report deviceusageuserdetail` | [viva engage report deviceusageuserdetail](./cmd/viva/engage/engage-report-deviceusageuserdetail.mdx)
202+
`yammer report groupsactivitycounts` | [viva engage report groupsactivitycounts](./cmd/viva/engage/engage-report-groupsactivitycounts.mdx)
203+
`yammer report groupsactivitydetail` | [viva engage report groupsactivitydetail](./cmd/viva/engage/engage-report-groupsactivitydetail.mdx)
204+
`yammer report groupsactivitygroupcounts` | [viva engage report groupsactivitygroupcounts](./cmd/viva/engage/engage-report-groupsactivitygroupcounts.mdx)
205+
`yammer user get` | [viva engage user get](./cmd/viva/engage/engage-user-get.mdx)
206+
`yammer user list` | [viva engage user list](./cmd/viva/engage/engage-user-list.mdx)
207+
208+
#### What action do I need to take?
209+
210+
Replace any of the aliases mentioned above with the corresponding command name. The functionality of the command hasn't changed.

docs/docusaurus.config.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,6 @@ const config: Config = {
5252
if (routePath.includes('/entra')) {
5353
return [routePath.replace('/entra', '/aad')];
5454
}
55-
if (routePath.includes('/viva/engage')) {
56-
return [routePath.replace('/viva/engage', '/yammer')];
57-
}
5855

5956
return [];
6057
}

src/m365/cli/commands/cli-consent.spec.ts

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -66,23 +66,6 @@ describe(commands.CONSENT, () => {
6666
assert(loggerLogSpy.calledWith(`To consent permissions for executing VivaEngage commands, navigate in your web browser to https://login.microsoftonline.com/fb5cb38f-ecdb-4c6a-a93b-b8cfd56b4a89/oauth2/v2.0/authorize?client_id=2587b55d-a41e-436d-bb1d-6223eb185dd4&response_type=code&scope=https%3A%2F%2Fapi.yammer.com%2Fuser_impersonation`));
6767
});
6868

69-
it('shows warning for Yammer permissions', async () => {
70-
const warnSpy = sinon.spy(command as any, 'warn');
71-
await command.action(logger, { options: { service: 'yammer' } });
72-
assert(warnSpy.called);
73-
});
74-
75-
it('supports specifying service', () => {
76-
const options = command.options;
77-
let containsOption = false;
78-
options.forEach(o => {
79-
if (o.option.indexOf('--service') > -1) {
80-
containsOption = true;
81-
}
82-
});
83-
assert(containsOption);
84-
});
85-
8669
it('fails validation if specified service is invalid ', async () => {
8770
const actual = await command.validate({ options: { service: 'invalid' } }, commandInfo);
8871
assert.notStrictEqual(actual, true);

src/m365/cli/commands/cli-consent.ts

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ class CliConsentCommand extends AnonymousCommand {
4949
#initValidators(): void {
5050
this.validators.push(
5151
async (args: CommandArgs) => {
52-
if (args.options.service !== 'VivaEngage' && args.options.service !== 'yammer') {
52+
if (args.options.service !== 'VivaEngage') {
5353
return `${args.options.service} is not a valid value for the service option. Allowed values: VivaEngage`;
5454
}
5555

@@ -60,12 +60,8 @@ class CliConsentCommand extends AnonymousCommand {
6060

6161
public async commandAction(logger: Logger, args: CommandArgs): Promise<void> {
6262
let scope = '';
63-
switch (args.options.service) {
64-
case 'yammer':
65-
await this.warn(logger, 'The yammer service is deprecated. Please use the VivaEngage service instead.');
66-
case 'VivaEngage':
67-
scope = 'https://api.yammer.com/user_impersonation';
68-
break;
63+
if (args.options.service === 'VivaEngage') {
64+
scope = 'https://api.yammer.com/user_impersonation';
6965
}
7066

7167
await logger.log(`To consent permissions for executing ${args.options.service} commands, navigate in your web browser to https://login.microsoftonline.com/${cli.getTenant()}/oauth2/v2.0/authorize?client_id=${cli.getClientId()}&response_type=code&scope=${encodeURIComponent(scope)}`);

src/m365/viva/commands/engage/engage-group-list.spec.ts

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import { session } from '../../../../utils/session.js';
1212
import { sinonUtil } from '../../../../utils/sinonUtil.js';
1313
import commands from '../../commands.js';
1414
import command from './engage-group-list.js';
15-
import yammerCommands from './yammerCommands.js';
1615
import { accessToken } from '../../../../utils/accessToken.js';
1716

1817
describe(commands.ENGAGE_GROUP_LIST, () => {
@@ -235,23 +234,6 @@ describe(commands.ENGAGE_GROUP_LIST, () => {
235234
assert.deepStrictEqual(command.defaultProperties(), ['id', 'name', 'email', 'privacy', 'external', 'moderated']);
236235
});
237236

238-
it('defines correct alias', () => {
239-
const alias = command.alias();
240-
assert.deepStrictEqual(alias, [yammerCommands.GROUP_LIST]);
241-
});
242-
243-
it('correctly logs deprecation warning for yammer command', async () => {
244-
const chalk = (await import('chalk')).default;
245-
const loggerErrSpy = sinon.spy(logger, 'logToStderr');
246-
const commandNameStub = sinon.stub(cli, 'currentCommandName').value(yammerCommands.GROUP_LIST);
247-
sinon.stub(request, 'get').resolves([]);
248-
249-
await command.action(logger, { options: {} });
250-
assert.deepStrictEqual(loggerErrSpy.firstCall.firstArg, chalk.yellow(`Command '${yammerCommands.GROUP_LIST}' is deprecated. Please use '${commands.ENGAGE_GROUP_LIST}' instead.`));
251-
252-
sinonUtil.restore([loggerErrSpy, commandNameStub]);
253-
});
254-
255237
it('correctly handles error', async () => {
256238
sinon.stub(request, 'get').rejects(
257239
{

src/m365/viva/commands/engage/engage-group-list.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import GlobalOptions from '../../../../GlobalOptions.js';
33
import request, { CliRequestOptions } from '../../../../request.js';
44
import VivaEngageCommand from '../../../base/VivaEngageCommand.js';
55
import commands from '../../commands.js';
6-
import yammerCommands from './yammerCommands.js';
76

87
interface CommandArgs {
98
options: Options;
@@ -25,10 +24,6 @@ class VivaEngageGroupListCommand extends VivaEngageCommand {
2524
return 'Returns the list of groups in a Viva Engage network or the groups for a specific user';
2625
}
2726

28-
public alias(): string[] | undefined {
29-
return [yammerCommands.GROUP_LIST];
30-
}
31-
3227
constructor() {
3328
super();
3429
this.items = [];
@@ -114,8 +109,6 @@ class VivaEngageGroupListCommand extends VivaEngageCommand {
114109
}
115110

116111
public async commandAction(logger: Logger, args: CommandArgs): Promise<void> {
117-
await this.showDeprecationWarning(logger, this.alias()![0], this.name);
118-
119112
this.items = []; // this will reset the items array in interactive mode
120113

121114
try {

src/m365/viva/commands/engage/engage-group-user-add.spec.ts

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import { session } from '../../../../utils/session.js';
1212
import { sinonUtil } from '../../../../utils/sinonUtil.js';
1313
import commands from '../../commands.js';
1414
import command from './engage-group-user-add.js';
15-
import yammerCommands from './yammerCommands.js';
1615
import { accessToken } from '../../../../utils/accessToken.js';
1716

1817
describe(commands.ENGAGE_GROUP_USER_ADD, () => {
@@ -65,23 +64,6 @@ describe(commands.ENGAGE_GROUP_USER_ADD, () => {
6564
assert.notStrictEqual(command.description, null);
6665
});
6766

68-
it('defines correct alias', () => {
69-
const alias = command.alias();
70-
assert.deepStrictEqual(alias, [yammerCommands.GROUP_USER_ADD]);
71-
});
72-
73-
it('correctly logs deprecation warning for yammer command', async () => {
74-
const chalk = (await import('chalk')).default;
75-
const loggerErrSpy = sinon.spy(logger, 'logToStderr');
76-
const commandNameStub = sinon.stub(cli, 'currentCommandName').value(yammerCommands.GROUP_USER_ADD);
77-
sinon.stub(request, 'post').resolves();
78-
79-
await command.action(logger, { options: { groupId: 1231231, id: 989998789 } });
80-
assert.deepStrictEqual(loggerErrSpy.firstCall.firstArg, chalk.yellow(`Command '${yammerCommands.GROUP_USER_ADD}' is deprecated. Please use '${commands.ENGAGE_GROUP_USER_ADD}' instead.`));
81-
82-
sinonUtil.restore([loggerErrSpy, commandNameStub]);
83-
});
84-
8567
it('correctly handles error', async () => {
8668
sinon.stub(request, 'post').callsFake(async () => {
8769
throw {

src/m365/viva/commands/engage/engage-group-user-add.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import GlobalOptions from '../../../../GlobalOptions.js';
33
import request from '../../../../request.js';
44
import VivaEngageCommand from '../../../base/VivaEngageCommand.js';
55
import commands from '../../commands.js';
6-
import yammerCommands from './yammerCommands.js';
76

87
interface CommandArgs {
98
options: Options;
@@ -24,10 +23,6 @@ class VivaEngageGroupUserAddCommand extends VivaEngageCommand {
2423
return 'Adds a user to a Viva Engage Group';
2524
}
2625

27-
public alias(): string[] | undefined {
28-
return [yammerCommands.GROUP_USER_ADD];
29-
}
30-
3126
constructor() {
3227
super();
3328

@@ -76,8 +71,6 @@ class VivaEngageGroupUserAddCommand extends VivaEngageCommand {
7671
}
7772

7873
public async commandAction(logger: Logger, args: CommandArgs): Promise<void> {
79-
await this.showDeprecationWarning(logger, this.alias()![0], this.name);
80-
8174
const requestOptions: any = {
8275
url: `${this.resource}/v1/group_memberships.json`,
8376
headers: {

src/m365/viva/commands/engage/engage-group-user-remove.spec.ts

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import { session } from '../../../../utils/session.js';
1212
import { sinonUtil } from '../../../../utils/sinonUtil.js';
1313
import commands from '../../commands.js';
1414
import command from './engage-group-user-remove.js';
15-
import yammerCommands from './yammerCommands.js';
1615
import { accessToken } from '../../../../utils/accessToken.js';
1716

1817
describe(commands.ENGAGE_GROUP_USER_REMOVE, () => {
@@ -67,23 +66,6 @@ describe(commands.ENGAGE_GROUP_USER_REMOVE, () => {
6766
assert.notStrictEqual(command.description, null);
6867
});
6968

70-
it('defines correct alias', () => {
71-
const alias = command.alias();
72-
assert.deepStrictEqual(alias, [yammerCommands.GROUP_USER_REMOVE]);
73-
});
74-
75-
it('correctly logs deprecation warning for yammer command', async () => {
76-
const chalk = (await import('chalk')).default;
77-
const loggerErrSpy = sinon.spy(logger, 'logToStderr');
78-
const commandNameStub = sinon.stub(cli, 'currentCommandName').value(yammerCommands.GROUP_USER_REMOVE);
79-
sinon.stub(request, 'delete').resolves();
80-
81-
await command.action(logger, { options: { groupId: 1231231, id: 989998789, force: true } });
82-
assert.deepStrictEqual(loggerErrSpy.firstCall.firstArg, chalk.yellow(`Command '${yammerCommands.GROUP_USER_REMOVE}' is deprecated. Please use '${commands.ENGAGE_GROUP_USER_REMOVE}' instead.`));
83-
84-
sinonUtil.restore([loggerErrSpy, commandNameStub]);
85-
});
86-
8769
it('correctly handles error', async () => {
8870
sinon.stub(request, 'delete').callsFake(async () => {
8971
throw {

src/m365/viva/commands/engage/engage-group-user-remove.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import GlobalOptions from '../../../../GlobalOptions.js';
44
import request, { CliRequestOptions } from '../../../../request.js';
55
import VivaEngageCommand from "../../../base/VivaEngageCommand.js";
66
import commands from '../../commands.js';
7-
import yammerCommands from './yammerCommands.js';
87

98
interface CommandArgs {
109
options: Options;
@@ -25,10 +24,6 @@ class VivaEngageGroupUserRemoveCommand extends VivaEngageCommand {
2524
return 'Removes a user from a Viva Engage group';
2625
}
2726

28-
public alias(): string[] | undefined {
29-
return [yammerCommands.GROUP_USER_REMOVE];
30-
}
31-
3227
constructor() {
3328
super();
3429

@@ -77,8 +72,6 @@ class VivaEngageGroupUserRemoveCommand extends VivaEngageCommand {
7772
}
7873

7974
public async commandAction(logger: Logger, args: CommandArgs): Promise<void> {
80-
await this.showDeprecationWarning(logger, this.alias()![0], this.name);
81-
8275
if (args.options.force) {
8376
await this.executeRemoveAction(args.options);
8477
}

src/m365/viva/commands/engage/engage-message-add.spec.ts

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import { session } from '../../../../utils/session.js';
1212
import { sinonUtil } from '../../../../utils/sinonUtil.js';
1313
import commands from '../../commands.js';
1414
import command from './engage-message-add.js';
15-
import yammerCommands from './yammerCommands.js';
1615
import { accessToken } from '../../../../utils/accessToken.js';
1716

1817
describe(commands.ENGAGE_MESSAGE_ADD, () => {
@@ -67,23 +66,6 @@ describe(commands.ENGAGE_MESSAGE_ADD, () => {
6766
assert.notStrictEqual(command.description, null);
6867
});
6968

70-
it('defines correct alias', () => {
71-
const alias = command.alias();
72-
assert.deepStrictEqual(alias, [yammerCommands.MESSAGE_ADD]);
73-
});
74-
75-
it('correctly logs deprecation warning for yammer command', async () => {
76-
const chalk = (await import('chalk')).default;
77-
const loggerErrSpy = sinon.spy(logger, 'logToStderr');
78-
const commandNameStub = sinon.stub(cli, 'currentCommandName').value(yammerCommands.MESSAGE_ADD);
79-
sinon.stub(request, 'post').resolves(firstMessage);
80-
81-
await command.action(logger, { options: { body: 'send a letter to me', groupId: 13114941440 } });
82-
assert.deepStrictEqual(loggerErrSpy.firstCall.firstArg, chalk.yellow(`Command '${yammerCommands.MESSAGE_ADD}' is deprecated. Please use '${commands.ENGAGE_MESSAGE_ADD}' instead.`));
83-
84-
sinonUtil.restore([loggerErrSpy, commandNameStub]);
85-
});
86-
8769
it('defines correct properties for the default output', () => {
8870
assert.deepStrictEqual(command.defaultProperties(), ['id']);
8971
});

src/m365/viva/commands/engage/engage-message-add.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import GlobalOptions from '../../../../GlobalOptions.js';
33
import request from '../../../../request.js';
44
import VivaEngageCommand from '../../../base/VivaEngageCommand.js';
55
import commands from '../../commands.js';
6-
import yammerCommands from './yammerCommands.js';
76

87
interface CommandArgs {
98
options: Options;
@@ -26,10 +25,6 @@ class VivaEngageMessageAddCommand extends VivaEngageCommand {
2625
return 'Posts a Viva Engage network message on behalf of the current user';
2726
}
2827

29-
public alias(): string[] | undefined {
30-
return [yammerCommands.MESSAGE_ADD];
31-
}
32-
3328
public defaultProperties(): string[] | undefined {
3429
return ['id'];
3530
}
@@ -100,8 +95,6 @@ class VivaEngageMessageAddCommand extends VivaEngageCommand {
10095
}
10196

10297
public async commandAction(logger: Logger, args: CommandArgs): Promise<void> {
103-
await this.showDeprecationWarning(logger, this.alias()![0], this.name);
104-
10598
const requestOptions: any = {
10699
url: `${this.resource}/v1/messages.json`,
107100
headers: {

src/m365/viva/commands/engage/engage-message-get.spec.ts

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import { sinonUtil } from '../../../../utils/sinonUtil.js';
1313
import commands from '../../commands.js';
1414
import command from './engage-message-get.js';
1515
import { settingsNames } from '../../../../settingsNames.js';
16-
import yammerCommands from './yammerCommands.js';
1716
import { accessToken } from '../../../../utils/accessToken.js';
1817

1918
describe(commands.ENGAGE_MESSAGE_GET, () => {
@@ -71,23 +70,6 @@ describe(commands.ENGAGE_MESSAGE_GET, () => {
7170
assert.notStrictEqual(command.description, null);
7271
});
7372

74-
it('defines correct alias', () => {
75-
const alias = command.alias();
76-
assert.deepStrictEqual(alias, [yammerCommands.MESSAGE_GET]);
77-
});
78-
79-
it('correctly logs deprecation warning for yammer command', async () => {
80-
const chalk = (await import('chalk')).default;
81-
const loggerErrSpy = sinon.spy(logger, 'logToStderr');
82-
const commandNameStub = sinon.stub(cli, 'currentCommandName').value(yammerCommands.MESSAGE_GET);
83-
sinon.stub(request, 'get').resolves(firstMessage);
84-
85-
await command.action(logger, { options: { id: 10123190123123 } });
86-
assert.deepStrictEqual(loggerErrSpy.firstCall.firstArg, chalk.yellow(`Command '${yammerCommands.MESSAGE_GET}' is deprecated. Please use '${commands.ENGAGE_MESSAGE_GET}' instead.`));
87-
88-
sinonUtil.restore([loggerErrSpy, commandNameStub]);
89-
});
90-
9173
it('defines correct properties for the default output', () => {
9274
assert.deepStrictEqual(command.defaultProperties(), ['id', 'sender_id', 'replied_to_id', 'thread_id', 'group_id', 'created_at', 'direct_message', 'system_message', 'privacy', 'message_type', 'content_excerpt']);
9375
});

0 commit comments

Comments
 (0)