Codeminer42/cm42-central

View on GitHub
CHANGELOG.md

Summary

Maintainability
Test Coverage
# Changelog

## [Unreleased]

## [3.0.0] 2023-10-10

- Remove "Story attachments" feature
- Implement real-time updates in the beta board
- Refactor some components to be functional components

## [2.10.0] 2023-06-08

- Refactor Note Operations to use dry-monads
- Refactor Project Operations to use dry-monads
- Refactor Team Operations to use dry-monads
- Refactor Task Operations to use dry-monads
- Refactor Project Board Operations to use dry-monads
- Refactor Iteration Operations to use dry-monads
- Remove Grape Gem
- Add global message about attachments feature removal

## [2.9.0] 2023-05-26

- Migrate from Webpacker to Vite Ruby

## [2.8.0] 2023-05-15

- Update Ruby to version 2.7.8
- Upgrade Node to 16.20

## [2.7.3] 2023-05-09

- Refactor Story operations to use dry-monads

## [2.7.2] 2022-12-28

### Update

- Rails to 5.2.6.2
- Puma to 5.6.2

## [2.7.1] 2021-07-12

### Update

- Ruby to 2.6.8
- Rails to 5.2.5

## [2.7.0] 2021-07-12

### Fixed

- Bug when change release date of story.

### Added

- New position column to Story

### Changed

- Change drag and drop logic in beta version

## [2.6.0] 2020-03-11

### Added

- [ V2 ] Drag-n-drop

### Fixed

- Bug when change release date of story.

### Changed

- [ V2 ] When story is accepted and release it has a different background color.

## [2.5.0] 2020-01-17

### Removed

- Rewire and Rewire Webpack
- Inject loader
- Karma and all dependencies related

### Changed

- [ V2 ] When story is accepted it has a different background color.
- Unscheduled stories may or not may have a estimate.
- Chilly Bin column have stories with or no estimate.
- Migrate all the javascripts tests from jasmine to jest.

### Update

- Front-End Dependencies
- NodeJS from 9.11.2 to 10.17.0
- Webpack Dev Server from 3.1.14 to 3.9.0

### Added

- babel-jest and @testing-library/jest-dom
- [ V2 ] Dialog confirmation when story state is changed in expanded shape.
- [ V2 ] Spinner when project is loading.
- [ V2 ] User mention.
- [ V2 ] Button to reverse story flow.
- [ V2 ] Actor in history of changes.
- [ V2 ] Buttons to show and hide columns.

### Fixed

- [ V2 ] Internationalization date.
- [ V2 ] Sprints calc bug.

## [2.4.0] 2019-10-21

### Added

- [ V2 ] Search feature

### Changed

- The app will automatically switch between teams when a user opens a link to a project of a team that is not the current selected one

## [2.3.0] 2019-10-08

### Changed

- [ V2 ] Reversed the order of done column sprints

### Fixed

- [ V2 ] Remove redundant switch cases from the stories reducer.
- [ V2 ] Fix number, date and points of sprints.
- [ V2 ] Sprints are shown in easier order in "done" column

### Added

- [ V2 ] Add project navigation bar
- [ V2 ] Fetch and show stories on the done column
- [ V2 ] Story:
  - Stories of release type
  - Option to Clone Stories
  - Disable fields when story is read-only
  - Link directly to stories
  - History
- [ V2 ] Centralized notification system
- [ V2 ] Top nav

## [2.2.0] 2019-03-15

### Added

- [ V2 ] Story:
  - Stories can be updated when it's closed
- Block reserved words for new teams name
- Refactor `.csv` renderer

### Fixed

- Fix error in recaptcha when access page new team
- Fix team user not found in api request

## [2.1.0] 2019-02-20

### Update

- Front-End Dependencies
  - Webpack from 2.6.1 to 4.29.1
  - React from 15.4.2 to 16.8.0
  - Redux from 3.7.2 to 4.0.1
  - Babel from 6.25.0 to 7.2.2
- Test Dependencies
  - Enzyme from 2.7.1 to 3.8.0
  - Jasmine from 2.5.1 to 3.3.0
  - Karma from 1.3.0 to 4.0.0
  - Sinon from 2.0.0 to 7.2.3

### Fixed

- [ V2 ] Board style to permit scrolling
- Fix alert favicon in production environment
- Export projects with no stories

### Added

- [ V2 ] Story:
  - Attachments:
    - With this change makes it necessary to set unsigned upload in cloudinary and set the ENV `CLOUDINARY_UPLOAD_PRESET`. For help you can see [this](https://cloudinary.com/documentation/upload_images#unsigned_upload) tutorial.

## [2.0.1] 2019-01-31

### Fix

- Enable Sidekiq Delayed Extensions

## [2.0.0] 2019-01-31

### Added

- [ V2 ] Story:
  - Title;
  - Type;
  - Requested By;
  - Owned By;
  - Estimate;
  - Description;
  - State;
  - Save, Cancel and Delete;
  - Notes;
  - Tasks;
  - Labels;

### Fix

- [ V2 ] Refactor Redux flow to remove stories duplication
- Bug on unarchive projects
- Wrong serialization in JSON
- Amount of backlog points in reports page
- Bug on creating two teams with the same name

### Change

- Package: camelcase-object-deep: 1.0.7 to change-object-case: 0.2.0
- Due to the update of the recaptcha gem, changed recaptcha's ENV variable names from `PUBLIC_KEY` and `PRIVATE_KEY` to `SITE_KEY` and `SECRET_KEY` respectively.

### Update

- Package: sinon: 1.17.5 to 2.0.0
- Ruby from 2.3.1 to 2.6.0
- Rails from 4.2.11 to 5.2.1

## [1.22.0] 2018-11-30

### Added

- Added supports to upload libre office formats
- Imports/exports of stories
  - Documents
  - Tasks
- Added Popover when Story is collapsed in board V2
- Resouce to expand/collapse a story in board V2
- Button to copy story url to clipboard in board V2

### Changed

- Change estimate button to dynamic values when story is collapsed in board V2

### Fixed

- Fix imports notes of stories
- Fix project delete when tasks or notes are readonly
- Fix exporting unnecessary fields from documents and done to export in JSON
- Fix pusher missing api key
- Special character in project title

### Security

- Updated rails from 4.2.7.1 to 4.2.11 (CVE-2018-16476)
- Updated rack from 1.6.10 to 1.6.11 (CVE-2018-16471)
- Updated loofah from 2.2.2 to 2.2.3 (CVE-2018-16468)
- Updated nokogiri from 1.8.4 to 1.8.5 (CVE-2018-14404
  and CVE-2018-14567)
- Update gem rollbar from 2.13.3 to 2.18.0

## [1.21.1] 2018-10-18

### Fixed

- Fix stories in the done sprints

## [1.21.0] 2018-10-15

### Added

- Option to archive teams
- Added pusher-fake to the project
- Project delete confirmation
- Field velocity_strategy to projects

### Fixed

- Fixed locale change when accessing user edit page
- Fixed Project delete
- Fixed `story-description` and `.note` by adding to sortable column canceled elements/nodes
- Fix calculation of first sprint size

### Changed

- pusherSockets.js to allow empty pusher env vars

## [1.20.1] 2018-09-26

### Removed

- Remove Velocity / Volatility from ProjectCard to optimize performance

## [1.20.0] 2018-09-14

### Added

- New endpoint to update batch stories
- Replace polling with Pusher to fetch project updates

### Fixed

- StoryOperations reading refactored to optimize queries and performance
- Fixes the project export process, to properly generate the downloadable CSV file
- Fixes the rendering of charts

## [1.19.0] 2018-05-25

### Added

- New way to load past stories
- New route to destroy batch stories.
- Missing button titles in story component

### Fixed

- CVE-2018-1000119 issue, updating rack-protection gem
- CVE-2018-8048 issue, updating loofah gem

## [1.18.0] 2018-02-16

### Added

- Update attachinary options before it gets invalid.
- Added memcached service to docker-compose, now action import work well

### Changed

- Change in import project, switch button attachinary_file_field to file_field
- Change the verification to refuse if const files is null, otherwise return the value files
- Request signature for file uploads once and all stories get this from a global place

## [1.17.0] 2018-01-23

### Fixed

- Adjusted README to use yarn install instead npm install on project setup
- Remove auto scroll to bottom when adding a story and highlights it instead
- Fix a bug in stories movement, now this action doesn't select the stories texts

### Changed

- Moved the story estimate buttons to a react component.

## [1.16.1] 2018-01-03

### Fixed

- Add jquery-ui to fit cloudinary-js missing dependency
- Preload tag_group in projects query on projects controller
- Sort all stories in backlog to keep intended priority

## [1.16.0] 2017-11-28

### Added

- Auto collapse done stories.
- Ability to drag stories from the epic column.

### Changed

- Updated rails to 4.2.7.1
- Updated rubocop to 0.49.1

### Fixed

- Webpack manifest host path set to localhost, so webpack pack file load on Windows is fixed
- Highlight the searched stories not behaving properly.

## [1.15.0] 2017-10-30

### Added

- Added the option to clone a story.
- Contextual search using operands.

### Changed

- Updated central-support gem version, so Slack can be used in integrations here now.
- Updated central-support gem version, to fix story cache_names bug when it was removed

### Fixed

- Tasks labels aren't escaping special characters anymore.
- Activities from a story is now showing correctly to non-admins project members

### Changed

- Moved the story action state buttons to a react component.

## [1.14.0] 2017-10-18

### Added

- Added adminer service to docker-compose.
- Added nginx proxy to docker-compose, to enable us to use custom domain names on development.

### Changed

- Changes on the style of the estimation form, on a story card.
- Changes the order which stories appear in the chilly bin column

### Fixed

- Show the form to estimate a task without having to open it
- Search results column being cleared after dragging a story between columns
- Search results wrongly appearing during searches
- Updated "central-support" gem to fix the volatility calculation.

## [1.13.0] 2017-10-11

### Fixed

- On projects index, velocity is not always falling to fallback value anymore
- Story Attachments not being properly uploaded
- Update central-support gem version which fixes velocity calculations
- Update velocity calculation on the dashboard

### Added

- Changes to the browser tab as a notification of a change
- User is able to drag and drop stories from search column.

## [1.12.0] 2017-09-26

### Changed

- Updated the favicon with the current logo
- Update Heroku stack

### Fixed

- Minor UI glitches on smaller screen resolutions

## [1.11.0] 2017-09-19

### Added

- Burn Down chart
- Highlights the release stories if the release date is compromised
- User impersonate gem for debugging purposes

### Changed

- Update cm42-central-support version to save delivered_at

### Fixed

- Fix webpack entry files
- Bring back description component when story type is release
- Show story errors on save failures
- Don't duplicate a story after save process fails once

## [1.10.0] 2017-09-13

### Fixed

- Allowed params to update project via API
- Fix central manage login and logout bugs

### Added

- Don't show projects to guests that he's not member of
- Disallow guests to make changes on projects

## [1.9.0] 2017-09-11

### Changed

- Changing `webpack-rails` gem to new `webpacker` gem

## [1.8.0] 2017-09-06

### Added

- Action into API to update project
- ENV variable to check if the captcha is enable

### Changed

- Adjust ESLint config and solve issues

## [1.7.0] 2017-09-04

### Added

- Enables rubocop Metrics/AbcSize
- Enabled PerceivedComplexity rubocop metric
- Enabled CyclomaticComplexity rubocop metric
- Added flag to mail reports
- Enabled AndOr rubocop style
- Enabled BlockNesting rubocop metric
- Enabled RedundantReturn rubocop style

### Changed

- Move users/form from projects to teams

## [1.6.0] 2017-08-22

### Added

- Discord integration

### Changed

- Story tasks to react components
- Story attachments input to react component
- Story description to react component
- Updated central-support gem to enable discord webhook integration support

### Fixed

- Fixing compatibility of docker-composer with webpack
- Fixing 'stop loading when save' javascript spec
- Fixing freeze from screen when create a new story

## [1.5.0] 2017-06-23

### Added

- Story History is now able to listen for changes on the story
- Codeclimate file with engines and removed files from analysis

### Changed

- Story type select to react component
- Story state select into react component
- Story requested_by select to react component
- Move select components to renderSelects function
- Story owned_by select to react component
- Alter route button Manage Members Team and associate user in team
- Story notes into react components
- Story labels to react component

### Fixed

- Story History bug when story actions where triggered
- Ticket not being reassigned to current user when state change to "started"
- Fix permission users to update others users
- Fix action create in user_policy

## [1.4.2] - 2017-05-24

### Removed

- YARN temporarily

## [1.4.1] - 2017-05-24

### Fixed

- Move "babel-preset-airbnb" outside devDependencies in package.json

## [1.4.0] - 2017-05-23

### Added

- tag group form
- Added First time tour.
- Basic style for Labels
- Slack Support
- Release date to Story
- Project now uses yarn

### Changed

- Story id, location and history input-form-group into a react component
- Story estimate select into a react component
- The attributes of a release story when creating or editing

### Fixed

- Remove the API module used in `using` params into Project Entity
- Clean up DatabaseCleaner config
- Admin assignment
- 'Velocity per member' report title translation
- Disable registration using enviroment variable `DISABLE_REGISTRATION`
- Display of throbber animated gif when adding a note or a task
- Labels autocomplete overflow

## [1.3.0] - 2017-04-25

### Added

- The option to each project has its own tag group
- Links to stories within the same project can be added to a story description.

### Fixed

- Docker setup for development env.
- User list refreshing when adding or removing team members

## [1.2.0] - 2017-04-7

### Changed

- Redirect automatically to project#index after the user authentication, when there is only one team on enrollments
- **Increase decimal precision from Stories position**
- Change story controls to react component

## [1.1.3] - 2017-03-30

### Changed

- Central-Support gem version updated to fix volatility issues

## [1.1.2] - 2017-03-30

### Added

- Option on stories to show their activity history.

### Changed

- Fix docker setup for development mode.
- Fix bug keeping .story-controls disabled after a failed upload.
- Added ES2015 support
- Improve project list

## [1.1.1] - 2017-03-14

### Changed

- Stories drag and drop bug fixed

## [1.1.0] - 2017-03-09

### Added

- User Endpoint
- Integrations in Project Endpoint
- Sidebar option to invert columns order.

### Changed

- Refactor /admin/users views using a Presenter.

## [1.0.0] - 2017-02-15

### Added

- Added a changelog. We will keep tracking from now and on!
- Added translations on reports description.

### Changed

- Redesign project reports and edit password pages.
- Redesign Admin Users pages.
- Changed the design of the edit teams page

### Fixed

- Fix a locale select bug to make the options visible on a dark navbar.
- Some improvements to fix some issues reported by codeclimate.

The format is based on [Keep a Changelog](http://keepachangelog.com)
and this project adheres to [Semantic Versioning](http://semver.org).

[1.0.0]: https://github.com/Codeminer42/cm42-central/tree/v1.0.0
[1.1.0]: https://github.com/Codeminer42/cm42-central/tree/v1.1.0
[1.1.1]: https://github.com/Codeminer42/cm42-central/tree/v1.1.1
[1.1.2]: https://github.com/Codeminer42/cm42-central/tree/v1.1.2
[1.1.3]: https://github.com/Codeminer42/cm42-central/tree/v1.1.3
[1.2.0]: https://github.com/Codeminer42/cm42-central/tree/v1.2.0
[1.3.0]: https://github.com/Codeminer42/cm42-central/tree/v1.3.0
[1.4.0]: https://github.com/Codeminer42/cm42-central/tree/v1.4.0
[1.4.1]: https://github.com/Codeminer42/cm42-central/tree/v1.4.1
[1.4.2]: https://github.com/Codeminer42/cm42-central/tree/v1.4.2
[1.5.0]: https://github.com/Codeminer42/cm42-central/tree/v1.5.0
[1.6.0]: https://github.com/Codeminer42/cm42-central/tree/v1.6.0
[1.7.0]: https://github.com/Codeminer42/cm42-central/tree/v1.7.0
[1.8.0]: https://github.com/Codeminer42/cm42-central/tree/v1.8.0
[1.9.0]: https://github.com/Codeminer42/cm42-central/tree/v1.9.0
[1.10.0]: https://github.com/Codeminer42/cm42-central/tree/v1.10.0
[1.11.0]: https://github.com/Codeminer42/cm42-central/tree/v1.11.0
[1.12.0]: https://github.com/Codeminer42/cm42-central/tree/v1.12.0
[1.13.0]: https://github.com/Codeminer42/cm42-central/tree/v1.13.0
[1.14.0]: https://github.com/Codeminer42/cm42-central/tree/v1.14.0
[1.15.0]: https://github.com/Codeminer42/cm42-central/tree/v1.15.0
[1.16.0]: https://github.com/Codeminer42/cm42-central/tree/v1.16.0
[1.16.1]: https://github.com/Codeminer42/cm42-central/tree/v1.16.1
[1.17.0]: https://github.com/Codeminer42/cm42-central/tree/v1.17.0
[1.18.0]: https://github.com/Codeminer42/cm42-central/tree/v1.18.0
[1.19.0]: https://github.com/Codeminer42/cm42-central/tree/v1.19.0
[1.20.0]: https://github.com/Codeminer42/cm42-central/tree/v1.20.0
[1.20.1]: https://github.com/Codeminer42/cm42-central/tree/v1.20.1
[1.21.0]: https://github.com/Codeminer42/cm42-central/tree/v1.21.0
[1.21.1]: https://github.com/Codeminer42/cm42-central/tree/v1.21.1
[1.22.0]: https://github.com/Codeminer42/cm42-central/tree/v1.22.0
[2.0.0]: https://github.com/Codeminer42/cm42-central/tree/v2.0.0
[2.0.1]: https://github.com/Codeminer42/cm42-central/tree/v2.0.1
[2.1.0]: https://github.com/Codeminer42/cm42-central/tree/v2.1.0
[2.2.0]: https://github.com/Codeminer42/cm42-central/tree/v2.2.0
[2.3.0]: https://github.com/Codeminer42/cm42-central/tree/v2.3.0
[2.4.0]: https://github.com/Codeminer42/cm42-central/tree/v2.4.0
[2.5.0]: https://github.com/Codeminer42/cm42-central/tree/v2.5.0
[2.6.0]: https://github.com/Codeminer42/cm42-central/tree/v2.6.0
[2.7.0]: https://github.com/Codeminer42/cm42-central/tree/v2.7.0
[2.7.1]: https://github.com/Codeminer42/cm42-central/tree/v2.7.1
[2.7.2]: https://github.com/Codeminer42/cm42-central/tree/v2.7.2
[2.7.3]: https://github.com/Codeminer42/cm42-central/tree/v2.7.3
[2.8.0]: https://github.com/Codeminer42/cm42-central/tree/v2.8.0
[2.9.0]: https://github.com/Codeminer42/cm42-central/tree/v2.9.0
[2.10.0]: https://github.com/Codeminer42/cm42-central/tree/v2.10.0
[3.0.0]: https://github.com/Codeminer42/cm42-central/tree/v3.0.0